jquery中事件重复绑定以及解绑问题
一般的情况下,对于这种情况,我们常规的思路是,先解绑,再绑定,如下:
$(selector).unbind('click').bind('click',function(){....});
当这样会有一个问题,unbind会把其之前的所有的click事件都unbind掉,可能会影响其他的绑定,有如下有两种方法解决:
第一种:
使用事件命令空间,来唯一标识这个click的绑定,这样在解绑是不会将其他click绑定的事件也给解绑。
$(selector).unbind('click.selectorClick').bind(click.selectorClick',function(){});
第二种:
不使用匿名方法
var handler = function(){};
$(selector).unbind('click',handler).bind('click',handler);