Javascript:IE和Chrome中的onBeforeUnload()行为

时间:2011-05-18 00:55:49

标签: javascript internet-explorer firefox google-chrome javascript-events

我有这段代码

window.onbeforeunload = function(){
      doSomething();
      return "Are you sure you want to leave";
}

在用户离开页面时,在Firefox中,首先执行 doSomething(),然后弹出警报。 在IE和Chrome中,首先弹出警报,然后如果用户决定保留 doSomething() 被执行。

有没有办法让IE和Chrome的行为像FF一样。我想在显示弹出窗口之前执行 doSomething()

1 个答案:

答案 0 :(得分:0)

您使用的是哪个版本的Firefox?据我所知,没有一个浏览器可以让你在onBeforeUnload上做任何事情而不是传递文本包含在弹出的确认对话框中 - 所以你不能阻止用户离开你的网站。

您不应该依赖此事件来确保用户离开您的网页时发生任何事情。如果重要的是将点击事件处理程序分配给可以离开页面的所有内容(您仍然会失去浏览器导航按钮和地址栏更改)