Javascript 无法在卸载之前在chrome中工作

Javascript 无法在卸载之前在chrome中工作,javascript,html,google-chrome,onbeforeunload,Javascript,Html,Google Chrome,Onbeforeunload,我在这个网站上看过类似的问题,但我不明白为什么这对我不起作用 我安装了最新版本的chrome。 我似乎无法让下面的代码在chrome中运行,但它在firefox中运行 Hello World! <script> window.onbeforeunload = function(){ alert("brohan"); } </script> 要执行所需操作,脚本应如下所示: <script> window.onbefore

我在这个网站上看过类似的问题,但我不明白为什么这对我不起作用

我安装了最新版本的chrome。 我似乎无法让下面的代码在chrome中运行,但它在firefox中运行

Hello World!

<script>
    window.onbeforeunload = function(){
        alert("brohan");
    }
</script>

要执行所需操作,脚本应如下所示:

<script>
  window.onbeforeunload = function() {
    return "brohan";
  };
</script>

如果您也想通知Firefox 4+用户为什么要问他们您希望的有用信息在哪里,您可以采用以下解决方案:

可能会晚些,但我想在此添加一些更新:

window.onbeforeunload中的自定义消息仍被Firefox故意禁用。我使用的是35.0版: @ecmanaut提出的解决方案现在不起作用-Firefox似乎已经在onbeforeunload处理程序中禁用了window.alert。描述于 我自己也在Mac OS X的Firefox 35.0中尝试过:

var isFirefox = /Firefox[\/\s](\d+)/.test(navigator.userAgent) && new Number(RegExp.$1) > 4;
window.onbeforeunload = function(e) {
  if (isFirefox) {
    window.alert('You are in firefox. Leaving this page you may lose some data.');
    return '...';
  }
  else {
    return 'Leaving this page you may lose some data.';
  }
 }
刷新/单击外部链接时,此代码段不会触发警报功能,也不会从浏览器中触发默认警报框。它只是离开页面


希望这条消息有帮助。

您的代码实际上正在运行,问题是Chrome不允许在onbeforeunload中发出警报,而Firefox允许。