如果还触发了节点事件,则取消窗口事件

问题描述 投票:1回答:1

我有一种情况,我必须将'onmouseup'事件附加到窗口。单击该按钮应在屏幕上的任何位置运行功能,除非在节点上单击时。在该特定节点上还有另一个'onmouseup'事件处理程序,因此目前我既可以运行这两个函数,也可以只运行一个函数(通过调用stopPropagation)。

我需要取消附加到窗口的事件并在节点上运行该事件。

javascript html5 event-handling mouseevent dom-events
1个回答
1
投票

window.onmouseup = (e) => console.log('window mouseup');

nestedMouseUp = (e) => {
  console.log('nestedMouseUp');
  e.stopPropagation();
}
.a {
  background: blue;
  width: 100px;
  height: 100px;
}

.b {
  background: pink;
}
<div class="a" >
  wrapper
  <div class="b" onmouseup="nestedMouseUp(event)">
  nested
  </div>
</div>
© www.soinside.com 2019 - 2024. All rights reserved.