jQuery的性能直播()事件处理程序(Performance of jQuery live() e

2019-09-30 03:32发布

我使用的是考虑到live()绑定的事件处理程序我还没有插入到DOM的功能。 然而,这看起来昂贵的 - 它必须要做的运行时检查的元素插入的任何时间,或执行“点击”元素的任何时间,例如,看处理程序是否应该被调用。

这是不是值得担心在实践中,或者是使用Javascript如此之快,现在,这是不值得关心?

为参考页live()函数: http://api.jquery.com/live/

Answer 1:

不, .live()使用事件冒泡做它的事。 它只是附着在根元素和反应事件通过DOM树冒泡。 它没有继续检查DOM元素的所有时间。

从一页面链接到:

.live()方法能够影响尚未通过使用事件代表团添加到DOM元素:绑定到一个祖先元素的处理程序是负责被其后代触发的事件。 传递给处理程序.live()是从来没有绑定到一个元素; 相反, .live()结合一种特殊的处理程序,以对DOM树的根。

保持这里看书,因为它进入更多细节。



Answer 2:

你可能会更好使用delegate()它不重视对文档的处理程序,但指定的父元素。 这意味着更少的负载。 它建议用它代替的.live()在大多数情况下。

关于NETTUTS的差异+



文章来源: Performance of jQuery live() event handler