[英]JavaScript event listener performance for hundreds of DOM elements
我有一个<ul>
,有很多孩子(接近3000项),有些<li>
有很多级别。 我在'click'上附加了一个事件监听器(我正在使用jQuery),我用它来切换<li>
子项的可见性。
我想知道如此多的事件监听器会影响性能。 (至少有1000个!)。 这对性能来说是个大问题吗?
对于较新的网络浏览器,我并没有真正看到很多性能问题,但IE8看起来非常慢。 在所有事情上敲打一个事件听众是不是不负责任?
答案是一个很大的百日咳YES。 是的,它会影响性能 。 事件委托是为这件事而建的。 而不是将处理程序绑定到每个li
,而是将其绑定到其父级ul
。 这样, ul
会将click
事件委托给li
。
$("ul").on("click", "li", function () {
//your code
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.