关于功能
$("selector").on("click", function(event){
//code to be executed
});
绑定功能
$("selector").bind("click", function(event){
//code to be executed
});
何时特别使用on function和bind函数?
答案 0 :(得分:1)
来自文档:
从jQuery 1.7开始,.on()方法是将事件处理程序附加到文档的首选方法。对于早期版本,.bind()方法用于将事件处理程序直接附加到元素。处理程序附加到jQuery对象中当前选定的元素,因此这些元素必须存在于调用.bind()的位置。有关更灵活的事件绑定,请参阅.on()或.delegate()中对事件委派的讨论。
绑定仅在元素存在时才有效,on将它绑定到与选择器匹配的所有元素。 Docs.
$(document).on("click","selector", function(event){
//code applies to all elements matching the selector.
});
答案 1 :(得分:0)
都将事件处理程序附加到文档... bind
将事件处理程序直接附加到元素(不委托)...所以绑定不适用于动态添加的元素,而on
就是这样......它使用事件委托。
使用你得到的代码.. on
和bind
之间没有任何区别。两者都做同样的事情(将点击处理程序附加到所选元素)
至于When to use on function and bind function especially?
简单的答案是,
如果您使用的是jquery 1.7+。使用
on()
, 如果您的元素是动态添加的,请使用.on()
。