我有一个div
里面另一个div
。两者都附加了事件侦听器以在 mousedown 上运行函数 - 调用它们outerDivFunction
和innerDivFunction
. 当我点击 inner 时div
,两个函数都会被调用;我希望它只调用innerDivFunction
.
这该怎么做?(原版解决方案比 jQuery 更受欢迎。)
使用事件的stopPropagation()
in innerDivFunction
。这防止了当前事件在捕获和冒泡阶段的进一步传播。
有关更多详细信息:事件传播
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>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句