繁体   English   中英

jQuery的.live('click',fn)和.click(fn)之间的性能差异

[英]Performance difference between jQuery's .live('click', fn) and .click(fn)

我喜欢jQuery 1.3中的新直播活动。 我的问题是这次活动的表现。 我知道使用直播点击/绑定('点击')的优点,但使用它而不是点击/绑定('点击')会有性能影响吗?

如果没有,为什么你会使用点击或绑定('点击')?

如果没有,为什么你会使用点击或绑定('点击')?

因为$ .live()有一些明显的缺点

  • 直播活动不以传统方式冒泡, 无法使用stopPropagation (在jquery 1.4.4中更改)或stopImmediatePropagation停止。 例如,假设有两个点击事件 - 一个绑定到“li”,另一个绑定到“li a”。 如果内部锚点发生咔嗒声,将触发BOTH事件。 这是因为当$(“li”)。bind(“click”,fn); 您实际上是在说“只要在LI元素上发生click事件 - 或者在LI元素内部 - 触发此单击事件。” 要停止对直播事件的进一步处理,fn必须返回false。
  • 直播活动目前仅在对选择器使用时才有效。 例如,这将起作用:$(“li a”)。live(...)但是这不会:$(“a”,someElement).live(...),这也不会:$(“a “).parent()。住(...)。

看到这个

至于为什么你会使用click或bind而不是live,答案是因为你不需要额外的功能。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM