我为onbeforeunload写了一段代码。它适用于IE,但不适用于任何其他浏览器。
var unloadFunction = function(){return "";}
window.addEventListener('beforeunload', unloadFunction);
此代码可能出现的问题。:(我无法理解。我希望这在所有浏览器中都能工作,以便在页面存在之前向用户显示确认弹出窗口。
卸载前处理由于网页行为不端而被引入,因此已被修改。结果,浏览器可能会也可能不会在卸载事件处理期间抑制警报。
有关详细信息,请参阅MDN,但请注意,提到的returnValue
是事件对象的属性,而不是从事件处理程序函数返回的值。
以下示例在主要浏览器和IE中运行(至少适用于windows 10(。
- Firefox和IE报告了
event.returnValue
中提供的消息 - Chrome忽略了这条消息,只是简单地询问
离开网站
您所做的更改可能不会保存。 - 只有IE显示了警告框
var unloadFunction = function( event){
event.returnValue = "do you really want to leave this page";
alert("unloading");
};
window.addEventListener('beforeunload', unloadFunction);