例如
<div class="container">
<div class="inside">I am not fire when click me</div>
</div>
$('.container').click(function(){
// container do something here
});
但是,当我点击里面的div时,也会触发容器的点击事件,因为div在容器内部,所以,我需要一种方法来防止点击里面的div时触发容器事件!
非常感谢!!
最佳答案
作为更通用的解决方案,您应该检查 e.target
在container
的click
事件处理程序中。
$('.container').click(function(e) {
// If you want to ignore clicks to anything inside the `.container` div:
if (!$(e.target).hasClass('container')) return;
// or, if you only want the `.inside` div to not fire the event,
if ($(e.target).hasClass('inside')) return;
// container do something here
});
这样您就不会阻止事件的传播,否则会打破界限 live
处理程序。
关于jquery - JQuery中点击容器内元素时如何取消容器div触发的点击事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5092675/