gpt4 book ai didi

javascript - 仅在内部元素上调用事件监听器(Javascript)

转载 作者:行者123 更新时间:2023-11-28 14:42:09 25 4
gpt4 key购买 nike

我有一个div在另一个里面div 。两者都附加了事件监听器来在 mousedown 上运行函数 - 称它们为 outerDivFunctioninnerDivFunction 。当我点击内部div时,两个函数都被调用;我希望它只调用 innerDivFunction

如何做到这一点? (Vanilla 解决方案优于 jQuery。)

最佳答案

innerDivFunction中使用事件的stopPropagation()。这可以防止当前事件在捕获和冒泡阶段进一步传播。

了解更多详情:Event Propagation

function outerDivFunction(){
alert('Outer Div');
}

function innerDivFunction(e){
e.stopPropagation();
alert('Inner Div');
}
.outer{
border: 1px solid blue;
}
.inner{
border: 1px solid red;
margin: 10px;
}
<div class="outer" onclick="outerDivFunction()">Outer Div
<div class="inner" onclick="innerDivFunction(event)">Inner Div</div>
</div>

关于javascript - 仅在内部元素上调用事件监听器(Javascript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47644329/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com