jQuery动态创建的dom对象不能绑定事件的解决方法

参照网上前辈:

方法一:绑定live事件 live(type,[data],fn)

$(selector).live("click",function(){

  alert("点击了");

});

但是测试无效,因为从 jQuery 1.7 开始,不再建议使用 .live() 方法。请使用 .on()来添加事件处理,到1.9已经不支持了

方法一:绑定on事件  ($(ParentEle).on("click",".thisEle",function(){})

$("body").on("click",".btn",function(){

  alert("点击了");

})

 

补充:

之前对jQuery事件理解的不深,对事件委派,绑定事件傻傻分不清。。。

对于上面的问题还可以通过parentSelector.delegate(childSelector,type,fn)方法实现,通过给父元素添加事件,然后委派给子元素执行,

如果需要给很多个子元素绑定事件事件的时候,我们可以考虑给父元素添加事件,委派给子元素,这样更加节省内存资源,性能更好

 

posted @ 2019-03-16 11:23  Ryan_Yue  阅读(880)  评论(0编辑  收藏  举报