【发布时间】:2020-07-10 23:30:35
【问题描述】:
使用 javascript,如何从元素中的某些类名中跳过或删除 e.stopPropagation()。在这种情况下,.dropdown 中的 .trigger 类?
<div class="dropdown">
<a href="#" class="trigger edit">Edit</a>
<a href="#" class="trigger delete">Delete</a>
<div class="content">
<p>Some Text</p>
</div>
</div>
JS
document.querySelector(".dropdown").addEventListener("click", e => {
e.stopPropagation();
})
【问题讨论】:
-
“在所有 标签中”?我不确定是否完全理解您的问题,但作为旁注,Event.stopPropagation() 应该永远不要使用。在阻止事件冒泡 DOM 并因此通知应用程序中的其他 层 发生了某些事情时,没有一个有效的论据。它只会导致问题。希望这就是您想要(根据我的理解)摆脱它的原因?
-
@RokoC.Buljan 抱歉,我使用类名更新了问题
-
是的,现在更清楚了,谢谢。 PS:无论如何。不要在你的应用程序中使用
stopPropagation()(嗯......除非你真的,真的知道你在做什么) -
谢谢,我会阅读关于你的 cmets 的 event.stopPropagation()
-
不客气。我扩展了我的答案,以给出一个有效的理由来支持我的陈述。还有一个类似的scenario example
标签: javascript html stoppropagation