我想用这个:
window.onbeforeunload = function () {
return "u sure?";
}
仅限刷新,前进/后退事件。目前这段代码捕捉到了一切。我不希望它捕获链接点击或形成帖子事件。另外,我需要在该函数中包含所有代码,所以我在想,也许有类似的东西(伪代码):
window.onbeforeunload = function () {
if(it was not a click && it was not a form post)
return "u sure?";
}
所以,再说一遍:是否有可能导致导致.onbeforeunload触发的事件?
答案 0 :(得分:1)
我能想到的最简单的解决方案是在表单提交或链接点击上取消绑定onbeforeunload
事件。
Array.prototype.forEach.call(document.querySelectorAll('form'), function (elem) {
elem.addEventListener('submit', function () {
window.onbeforeunload = function () {}
});
});