我将一个事件设置为a wrapper div
,但是在这里面div
,我有一些buttons
,我怎样才能防止这个wrapper
事件发生在buttons
?
html:
<div class="wrapper-alert"> <!-- click here will pop-up -->
<div class="somethingElse"> <!-- click here will pop-up -->
Some text
</div>
<div class="this-is-my-action">
<button class="inside-alert">Inside</button> <!-- click here will NOT pop-up-->
</div>
<div class="somethingElseTo"> <!-- click here will pop-up -->
Some text
</div>
</div>
我做了一个jsfiddle更清楚。
所以,基本上,如果我点击wrapper-alert
一些消息会弹出,但如果我点击button
另一件事会发生,问题是按钮是包装器的孩子,所以2个事件会一次触发。
我尝试了一些东西,if (e.target !== this) return;
但只适用于一个children
或一些基本结构。