当用户尝试导航到另一个页面时,我的网站会显示带有加载器动画的自定义模式窗口:
window.onbeforeunload = function() {
w.modalForms.loading.show(true); // true stands for permanent
};
除了以下情况外,它的效果很好:例如,用户单击了错误的链接并按了Esc(或单击了浏览器的“停止”按钮)以取消导航。因此,加载模式不会消失,他必须更新页面才能使用该网站。
我想知道用户何时取消卸载\导航离开。
就像这样:
window.onunloadcancelled = function() {
w.modalForms.loading.hide();
}
我怎样才能实现这个目标?
最佳答案
一旦对新网页的请求被触发,也许您应该尝试超时。没有跨浏览器解决方案可以检测用户何时点击停止按钮。
对于esc键,可以捕获事件并移除
$(document).keyup(function(e) {
if (e.keyCode == 27) {
w.modalForms.loading.hide();
}
});
显示模态后您可以开始观察 ESC 键。然后删除keyup的监听器
关于javascript - 如何知道用户何时取消页面卸载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34433037/