7

我有一个<ul>有很多孩子(接近 3000 个项目),其中一些<li>有很多级别。我在 'click' 上附加了一个事件监听器(我正在使用 jQuery),我用它来切换<li>.

我想知道拥有这么多事件侦听器如何影响性能。(至少有 1000 个!)。这对性能来说是个大问题吗?

我并没有真正看到较新的网络浏览器的性能问题,但 IE8 似乎很慢。只是在所有事情上敲击事件侦听器是非常不负责任的吗?!

4

1 回答 1

9

答案是肯定的。是的,它会影响性能。事件委托就是为这个确切的事情而构建的。li与其将您的处理程序绑定到每个ul. 这样,ul将把click事件委托给li.

$("ul").on("click", "li", function () {
 //your code
});
于 2013-07-24T18:04:44.623 回答