我遇到需要多次将click事件绑定到对象的情况。
例如:
for(i=0;i<=100;i++){
$myObject.click(function(){
window.location = "myurl"+i+".html";
})
...do other stuff...
}
通过该标记,$ myObject最终会附加100个点击事件吗?我应该每次首先取消绑定点击事件吗?
for(i=0;i<=100;i++){
$myObject.unbind('click').click(function(){
window.location = "myurl"+i+".html";
})
...do other stuff...
}
答案 0 :(得分:1)
您将在第一次调用中绑定100个点击事件,并且只需单击一次即可从myurl0.html - myurl100.html设置窗口位置。 (编辑:我没有测试过这个;它可能会创建一个闭包,因此只会打开myurl100.html。)
第二个只打开myurl100.html。
一般情况下,最好取消绑定不再需要的事件。
您是否正在寻找类似one的内容,该内容会触发一次且未绑定?
答案 1 :(得分:0)
根据this article,live()方法将比bind()
更快