on('click')与.click()事件的区别

659 阅读1分钟

on('click')与.click()事件的区别

image.png 支持动态绑定元素,即页面上元素有添加或变化后仍可绑定,前提是selector须是目标绑定元素的父元素,如绑定body里的动态li元素:

其二:

正如下面的例子所述,使用.on另一个原因是命名空间事件

如果使用.on("click", handler)添加处理程序,通常可以使用.off("click", handler)删除该处理程序。 显然,只有在引用了该函数的情况下,此方法才有效,否则,该怎么办?

您使用命名空间:

image.png

通过解除绑定

$("#element").off("click.someNamespace");

若直接绑定动态的li元素将不成功,效果与$('').click()相同。 $('').click()事件只能绑定静态元素。

总结: click事件仅在呈现元素时起作用,并且仅在DOM准备就绪时才附加到加载的元素上。

.on事件是动态附加到DOM元素的,当您要将事件附加到在ajax请求或其他内容(在DOM准备就绪后)上呈现的DOM元素上时,这很有用。