一般的情況下,對於這種情況,我們常規的思路是,先解綁,再繫結,如下:
$(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);