我有通过 Ajax 带来响应的应用程序,并在每次刷新时创建 5-20 个新的 jQuery 单击侦听器。IE 和 mozilla 浏览器的使用似乎都在变慢。这会显着降低浏览器性能。听众可以被“释放”吗?
问问题
2000 次
3 回答
3
添加到安迪所说的现场。
您可能应该使用委托或使用要添加到页面的元素。听起来您没有将唯一事件绑定到新元素(每次刷新时),而是重用函数。
在 jQuery 1.4.2 中,可以像这样使用 delegate():
// the container, the selector, "the event", the function to be called
$("#container").delegate(".selector", "click", function(){
// do stuff...
});
这只需要调用一次,并且每个添加到“#container”的“选择器”类的新元素都将绑定其点击事件
于 2010-04-13T13:29:47.693 回答