繁体   English   中英

为什么在委托()不起作用时JQuery live()起作用?

[英]Why is that JQuery live() works while delegate() not working?

我正在处理的代码过于复杂,因此无法在此处粘贴代码。

但是我遇到的情况是这样的:.js文件包含在两个不同的html中,
在一个html中, delegate()起作用了,但是在其他HTML中,则没有任何作用。
然后我用live()替换了delegate() ,然后在两个html中都正常工作。

我很好奇为什么会这样。
可能是因为我在两个html中包含太多不同的js文件,并且可能引起一些冲突吗?

您必须记住,当您委托()到某个元素时,在调用委托时该元素必须出现在dom中。

所以如果你打电话

 $('#mycontainer').delegate(....

ID为mycontainer的元素必须存在,否则委托()将无法工作。 造成一些开销的一种解决方法是委派给documentbody

 $('body').delegate()

Live()始终有效,因为实际上您是委派给身体的。

暂无
暂无

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

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