0

我正在创建一个嵌套的 div,如下面的代码

<body>
  <div style='border:solid 1px red' onclick='alert("hi")'>
  Hawaii
    <div style='border:solid 1px blue;margin:10px;' onclick="alert('haha');return false;">Aloha</div>
  </div>
</body>

我想在点击 aloha 的 div 但不冒泡到夏威夷 div onclick 事件时显示哈哈,有没有办法实现它?

编辑:我忘了提到我知道事件冒泡,但是有没有办法停止单个元素的冒泡/取消传播?

4

1 回答 1

1

event.stopPropagation在现代浏览器中执行此操作。

在版本 9 之前的 Internet Explorer 中,您需要改为设置event.cancelBubble = true

例子:

<div style='border:solid 1px blue;margin:10px;' onclick="alert('haha'); event.stopPropagation(); return false;">Aloha</div>

如果您避免将 Javascript 放在 HTML 属性中,您可以做得更好。

于 2013-01-11T05:49:30.963 回答