我有以下内容:
$('.comment_content').live('focus click', function() {
$(this).bTextAreaResizer();
});
我需要点击直播,因为有时会在页面加载后动态显示comment_content框。我只是注意到每次都会继续将bTextAreaResizer()重新应用到textarea,这会使浏览器停止运行。在我的插件中:
(function($){
$.fn.bTextAreaResizer = function(options) {
return this.each(function() {
//bind events
$(this).bind('scroll keyup', function() {
resizeTextArea($(this));
});
我怎么说,如果我们还没有绑定到这个元素?这可能吗?
由于
答案 0 :(得分:0)
我想有更好的方法,但为了避免重复的事件绑定,您可以取消绑定之前的事件。您可以使用event namespaces。顺便说一句,在这种情况下,你不需要遍历所有元素:
return this.unbind('.btar')
.bind('scroll.btar keyup.btar', function() {
resizeTextArea($(this));
});