我已经写了这段代码
function winUnload() {
alert("Unload Window");
MyMethod();
}
window.onunload = function() { winUnload(); }
此代码在 IE 和 Firefox 中运行良好。但是这段代码在 Chrome 中不起作用。双方的陈述alert("Unload Window");
和MyMethod();
不工作。
我已经写了这段代码
function winUnload() {
alert("Unload Window");
MyMethod();
}
window.onunload = function() { winUnload(); }
此代码在 IE 和 Firefox 中运行良好。但是这段代码在 Chrome 中不起作用。双方的陈述alert("Unload Window");
和MyMethod();
不工作。
在卸载事件内部,有些操作在 chrome 中不起作用。警报或确认框就是这样的东西。
但是有什么可能(AFAIK):
#2 的示例:
$(window).on('beforeunload', function() {
return 'Your own message goes here...';
});
我知道这很旧,但我找到了使用 Chrome 进行卸载的方法
window.onbeforeunload = function () {
myFunction();
};
阿明的回答很有用,谢谢。#2 是在尝试设置适用于大多数浏览器的卸载事件时最重要的知识:您不能使用 alert() 或 confirm(),但返回一个字符串将生成一个确认模式。
但是我发现即使只返回一个字符串,我也有一些特定于 Mootools 的跨浏览器问题(在本例中使用版本 1.4.5)。这个 Mootools 特定的实现在 Firefox 中运行良好,但在 Chrome 或 Safari 中没有导致确认弹出:
window.addEvent("beforeunload", function() {
return "Are you sure you want to leave this page?";
});
所以为了让我的 onbeforeonload 事件跨浏览器工作,我不得不使用 JavaScript 本机调用:
window.onbeforeunload = function() {
return "Are you sure you want to leave this page?";
}
不知道为什么会这样,或者它是否已在 Mootools 的更高版本中修复。
您可以尝试将 pagehide 事件用于Chrome and Safari
.
检查这些链接:
如何检测浏览器对 pageShow 和 pageHide 的支持?
http://www.webkit.org/blog/516/webkit-page-cache-ii-the-unload-event/
请尝试window.onbeforeunload
代替window.onunload
chrome。您也可以尝试onbeforeunload
从body>
可能在 chrome 中工作的标签进行调用。
但是,我们在 chrome 浏览器中的卸载功能确实存在问题。请检查