我想防止在子div上单击时的父onclick事件,如下所示:

<div onclick='parentClick()'>
  <div onclick='childClick()'>
    <div onlick='subchildClick()'>
    </div>
  </div>
</div>


我希望 childClick()函数将执行 subchildClick()函数,但阻止 parentClick()。怎么做?
非常感谢你!

最佳答案

childClick函数中使用 event.stopPropagation() 。像这样:

function childClick(event) {
    event.stopPropagation();
    // Other stuff
}
event.stopPropagation()防止事件继续使DOM冒泡。
因为您只是在childClick处理程序中调用此函数,所以subChild中的事件仍将传播到childClick处理程序。

09-16 12:08