我已经设置了一个卸载监听器,它设置了一个标志,用于检查来自 ajax 请求的错误处理程序。
jQuery(window).unload(function() {
unloadhappening = true;
});
但是,可以中止 ajax 请求(当用户导航到另一个页面时)并在触发卸载事件之前调用 ajax 请求的错误处理程序。
我想知道我可以在卸载之前获得一个事件吗?显然,我可以在每个链接上放置一个监听器以从页面移出,但如果有的话,我正在寻找一种更简洁的方法。
谢谢
最佳答案
您可能会使用 onbeforeunload
或 $(window).on('beforeunload')
但从函数返回一个空字符串以防止出现有关导航的提示。
window.onbeforeunload = function(e) {
unloadhappening = true;
// maybe other logic
return ''; // or maybe return null
}
我还没有测试在所有浏览器中避免弹出框的解决方案,因此您的情况可能会有所不同。
关于javascript - 在页面卸载之前需要一些东西吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17452885/