事件委托on()里面阻止事件冒泡

2018-10-26  本文已影响0人  my沙漠玫瑰

1.为动态添加的元素添加事件时,直接给元素添加事件,由于找不到动态添加的元素而报错;

解决:使用事件委托的方式,给其父元素添加事件,前提父元素不是动态添加的;

$("#table tbody").on("click",".child",function(){

    //做一些操作

})

2.事件委托时阻止事件冒泡有可能失效

原因:on方法的元素操作的是父元素($("#table tbody")),而非.child子元素,所以事件执行的时候依然会冒泡到tbody元素,tr上如果添加了点击事件也会执行

解决方案:再包一层父元素,找到没有添加事件的元素来进行事件委托,如$("#table tbody tr td"))

上一篇 下一篇

猜你喜欢

热点阅读