停止触发点击事件
Stop click event from firing
我有 2 个独立的事件监听器,第一个是点击事件,第二个是 window beforeunload 监听器:
这是点击事件监听器:
document.body.addEventListener('click',function(event){
if (event.defaultPrevented) return;
console.log('click EL');
})
这是 beforeunload 侦听器:
window.addEventListener("beforeunload", function (e) {
e.preventDefault();
console.log('beforeunload EL');
})
如果 beforeunload 被触发,我可以停止触发点击事件吗?我试过 event.preventDefault();
还是不行。
试试这个,这是工作代码:
var beforeunload = function (e) {
e.preventDefault();
console.log('beforeunload EL');
}
window.addEventListener("beforeunload", beforeunload);
document.body.addEventListener('click',function(event){
if (event.defaultPrevented) return;
console.log('click EL');
window.removeEventListener("beforeunload", beforeunload);
});
如果发生点击,只需删除侦听器
我有 2 个独立的事件监听器,第一个是点击事件,第二个是 window beforeunload 监听器: 这是点击事件监听器:
document.body.addEventListener('click',function(event){
if (event.defaultPrevented) return;
console.log('click EL');
})
这是 beforeunload 侦听器:
window.addEventListener("beforeunload", function (e) {
e.preventDefault();
console.log('beforeunload EL');
})
如果 beforeunload 被触发,我可以停止触发点击事件吗?我试过 event.preventDefault();
还是不行。
试试这个,这是工作代码:
var beforeunload = function (e) {
e.preventDefault();
console.log('beforeunload EL');
}
window.addEventListener("beforeunload", beforeunload);
document.body.addEventListener('click',function(event){
if (event.defaultPrevented) return;
console.log('click EL');
window.removeEventListener("beforeunload", beforeunload);
});
如果发生点击,只需删除侦听器