jQuery对于动态生成的元素绑定无效的问题~~

  问题:很多时候发现,对动态生成的元素绑定click事件是无效的~

  原因:直接绑定到动态生成的元素是无效的,是因为Jquery扫描文档找出所有的$(‘’)元素,并把函数绑定到每个元素的click事件上,表明是现有页面上存在的元素,动态生成的元素不包括在内

  解决方法:代理或者说是委托on( ),实现原理是事件的冒泡,在指定的祖先元素中注册事件,元素事件触发,传播到这个元素然后进行筛选。

       可以在祖先元素中绑定事件,比如div是祖先元素,而新生成的元素都是div的子元素,所以动态生成的元素的事件就可以绑定了.

  

$(".parents").on("click",".children",function(){
   //函数体 
})

//绑定祖先元素.parents 委托给他的子元素,也就是你真正想要绑定的元素~~

 

posted on 2016-01-09 14:51  DFrain  阅读(1508)  评论(0编辑  收藏  举报

导航