gpt4 book ai didi

javascript - 如果另一个元素在顶部,则防止 onClick 触发

转载 作者:行者123 更新时间:2023-11-28 04:45:05 25 4
gpt4 key购买 nike

我有一个应用程序,当您单击背景时会发生一些事情,但是,如果您单击背景顶部的其他内容,我不希望它激活。例如:

function handleClick() {
alert("Hello!");
}
.container {
position: absolute;
height: 100%;
width: 100%;
background: red;
}

.button {
position: absolute;
height: 20%;
width: 20%;
background: green;
}
<div class="container" onClick="handleClick()">
<div class="button"></div>
</div>

在这个例子中,当用户点击绿色框时,我如何防止显示警告?

最佳答案

你需要在内部使用div onclick="event.stopPropagation()"

停止冒泡

A bubbling事件直接从目标元素开始。通常它会上升到 <html> , 然后到 document对象,有些事件甚至达到window ,调用路径上的所有处理程序。

但是任何处理程序都可以决定事件已完全处理并停止冒泡。

它的方法是 event.stopPropagation() .

演示

function handleClick() {
alert("Hello!");
}
.container {
position: absolute;
height: 100%;
width: 100%;
background: red;
}

.button {
position: absolute;
height: 20%;
width: 20%;
background: green;
}
<div class="container" onClick="handleClick()">
<div onclick="event.stopPropagation()" class="button"></div>
</div>

关于javascript - 如果另一个元素在顶部,则防止 onClick 触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49637047/

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