我正在尝试添加div click事件的动作,并且我在另一个内部包含一个div。我希望每个div的点击事件不同。但是如果div被包含在另一个内部,则内部div上的click事件会执行这两个操作,例如..我添加了一个小提琴和一个示例代码。如何为每个div单独制作单独的动作?
$('#outerDiv').on("click",function(){
alert("s");
});
$('#innerDiv').on("click",function(){
alert("n");
});
<div id='outerDiv'><div id='innerDiv'></div></div>
答案 0 :(得分:2)
使用e.stopPropagation()
阻止事件冒泡到父级。
这可以防止事件冒泡DOM树,从而阻止任何父处理程序收到事件通知。通过添加stopPropagation()事件不会冒泡到其父#outerDiv
或更高的位置。
$('#innerDiv').on("click",function(e){
e.stopPropagation();
alert("n");
});
答案 1 :(得分:2)
使用event.stopPropagation()防止事件冒泡
请参阅Fiddle
$('#outerDiv').on("click",function(){
alert("s");
});
$('#innerDiv').on("click",function(e){
alert("n");
e.stopPropagation();
});
答案 2 :(得分:1)