是否可以在窗口卸载前打开SINGLE自定义弹出窗口

时间:2014-04-04 17:47:52

标签: javascript jquery html html5

我想提示用户注销或留在页面上登录。我尝试使用以下代码,但无法找到正确的解决方案:

window.onbeforeunload = function (e) {
          var e = e || window.event;

          // For IE and Firefox
          if (e) {
            e.returnValue = 'Any string';
          }
            alert(doLogout());
          // For Safari
          return 'Any string';
        };

        function doLogout(){
            var r=confirm("Press a button!");
            alert("confirmResponse: " + r);
            return r;
        }

当我尝试关闭标签/窗口时,它只是要求"此页面要求您确认是否要离开 - 您输入的数据可能无法保存"。在我的代码中,应首先弹出确认对话框,但这不会发生。

任何解决方案?

1 个答案:

答案 0 :(得分:1)

由于安全原因,它不会做警报()。这种防止用户离开页面的策略经常被互联网上的坏人使用#34;所以大多数浏览器阻止它。您只能在onunloadonbeforeunload中执行的操作是在决定留下或离开页面之前传递应显示给用户的字符串。你应该给你留言代替'Any string'。这对用户来说应该足够了。