jQuery中bind方法与live方法区别

元气小坏坏 提交于 2020-04-07 05:29:42

<p>&#160;&#160;&#160; 今天做项目时遇到的关于live与bind的问题,经查阅资料所得,live实际上为bind方法的变型,bind方法<strong>仅支持当前存在元素的事件绑定,而对于日后js动态生成的元素绑定无效</strong>。而live方法则弥补了此缺陷,即可以对使用js动态生成的元素产生绑定事件。</p> <p>&#160;&#160;&#160; 出现这种情况得益于live方法的&quot;事件委托机制&quot;,即绑定在祖先元素上的事件可以在其后代元素中使用。live方法把事件绑定在DOM树的根节点上,而不是绑定到具体的节点中。</p> <p>&#160;&#160;&#160; 如$(&quot;myBtn&quot;).live(&quot;click&quot;,func1);把func1事件绑定到DOM树根节点上,当点击myBtn按钮时,我们会不断地向上冒泡查找是否存在关于myBtn的click事件,直到查找到DOM树的根节点上,触发了func1事件。</p>

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!