我在徘徊'on'和'live'之间的区别
$('selector').on('click', function(){
});
$('selector').live('click', function(){
});
何时使用其中一个是有意义的。
答案 0 :(得分:0)
$('selector').on('click', function(){ });
将click事件处理程序绑定到selector
选择的所有元素。这些元素必须在调用时存在。
$('selector').live('click', function(){ });
会将事件处理程序绑定到document
,并捕获与selector
匹配的元素上的所有点击事件。在进行呼叫时不必存在这些元素。这也称为event delegation。
您可以(并且应该在jQuery 1.9中删除.live
)也使用.on
进行事件委派,但语法略有不同。相当于.live
调用的是:
$(document).on('click', 'selector', function(){ });