当用户尝试导航到另一个页面时,我的网站显示带有加载器动画的自定义模式窗口:
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