0

我尝试使用卸载事件,但它似乎不适用于 chrome 或 Firefox。所以我尝试了另一种方式,问题是页面隐藏回调似乎永远不会调用

if ("onpagehide" in window) {
      window.addEventListener("pageshow", function(){alert("enter page")}, false);
      window.addEventListener("pagehide", function(){alert("leave page")}, false);
} else {//for IE
     window.addEventListener("load", function(){alert("enter page")}, false);
     window.addEventListener("unload", function(){alert("leave page")}, false);
}
4

1 回答 1

1

我不确定 Firefox,但 Chrome 会忽略从 window.onunload 调用的任何警报。它也不会让您更改 URL 的任何部分以及可能的其他内容。这可能就是为什么看起来事件没有触发的原因。要检查它是否正在触发,您可以从处理函数返回一个字符串,该函数会显示其中一个“您确定要离开此页面吗?” 消息框。

于 2013-05-30T20:46:34.470 回答