jquery中事件重複繫結以及解綁問題

qingyezhu發表於2014-07-16

一般的情況下,對於這種情況,我們常規的思路是,先解綁,再繫結,如下:

$(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);

相關文章