我的身体上有一个点击监听器:
document.body.addEventListener('click', function(e){
});
Run Code Online (Sandbox Code Playgroud)
它就在那里当用户点击我的网站主体或任何其他元素时,任何打开的弹出窗口都会关闭.
但我想阻止弹出窗口(除了X按钮)点击触发事件.
我怎样才能做到这一点?
您需要防止事件冒泡.为此,请使用event.stopPropagation (),这将停止将click事件传播到DOM中的元素(例如正文).
所以在你的情况下,它会是这样的:
document.body.addEventListener('click', function(e){
// Close modal
});
specificOtherElement.addEventListener('click', function(e){
e.stopPropagation ();
// Do other stuff eventually
});
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅https://developer.mozilla.org/en-US/docs/Web/API/Event/stopPropagation.
| 归档时间: |
|
| 查看次数: |
37 次 |
| 最近记录: |