.click(function(){});和.on('click',function(){})的区别是什么??
感觉都是单击触发效果。
感觉都是单击触发效果。
2018-08-14
click定义了以后,只对上文的dom有效果,下文新建的dom是没有这个事件的
on了以后,不管是上文拥有的dom,还是新建的dom,都有这个事件
一个很简单的例子:
不用on:
var a = $('<div class="cl">创建节点</div>');
a.appendTo('body');
$('.cl').click(function(){console.log('click无on')});
$('body').append('<div class="cl">新建节点</div>');
这个只有创建节点这个dom上点击有console,新建节点没有console
下面用on:
var a = $('<div class="cl">创建节点</div>');
a.appendTo('body');
$(document).on('click', '.cl', function(){console.log('click有on')});
$('body').append('<div class="cl">新建节点</div>');
这个创建节点和新建节点都有console
举报