jquery绑定多个单击事件的性能

时间:2010-03-29 20:21:49

标签: jquery events

我遇到需要多次将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...
}

2 个答案:

答案 0 :(得分:1)

您将在第一次调用中绑定100个点击事件,并且只需单击一次即可从myurl0.html - myurl100.html设置窗口位置。 (编辑:我没有测试过这个;它可能会创建一个闭包,因此只会打开myurl100.html。)

第二个只打开myurl100.html。

一般情况下,最好取消绑定不再需要的事件。

您是否正在寻找类似one的内容,该内容会触发一次且未绑定?

答案 1 :(得分:0)

根据this article,live()方法将比bind()

更快
相关问题