鍍金池/ 問答/HTML/ js如何實(shí)現(xiàn),在用戶關(guān)閉瀏覽器(和標(biāo)簽頁)的時候,彈出提示?

js如何實(shí)現(xiàn),在用戶關(guān)閉瀏覽器(和標(biāo)簽頁)的時候,彈出提示?

    <script src="bootstrap-3.3.7/docs/assets/js/ie10-viewport-bug-workaround.js"></script>
<script data-main="js/main.js" src="js/lib/require.min.js"></script>
<script type="text/javascript">
    window.onbeforeunload = function (e) {
        var message = '正在排隊(duì)中,請勿關(guān)閉瀏覽器';
        e = e || window.event;
    
        if (e) {
            e.returnValue = message;
        }
    
        return message;
    };
</script>

我這樣在頁面中寫的,為什么不生效呀
再打開的頁面中點(diǎn)擊一下鼠標(biāo),之后就可以了,不點(diǎn)擊鼠標(biāo)不生效,不知道什么原因?
回答
編輯回答
拼未來

chrome瀏覽器的bug。只要你打開控制臺就能觸發(fā)。否則觸發(fā)不了。

2018年5月30日 21:14
編輯回答
墨小羽

可以用window.onbeforeunload.

示例:

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

  // 兼容IE8和Firefox 4之前的版本
  if (e) {
    e.returnValue = '關(guān)閉提示';
  }

  // Chrome, Safari, Firefox 4+, Opera 12+ , IE 9+
  return '關(guān)閉提示';
};

備注:Chrome失效可能是版本的問題。附上從v51版本開始的改動信息:Remove custom messages in onbeforeunload dialogs。里面提及到“A window's onbeforeunload property no longer supports a custom string.” 也就是不再支持自定義字符串。

2017年6月10日 01:09
編輯回答
安若晴

竟然被邀請回答,不勝榮幸。
我試了下你自己的代碼是有提示的:chrome版本 67.0.3396.87(正式版本)會有提示彈出,且這段代碼已經(jīng)含有兼容性了;
你一個人的chrome不行還是其他人員的也不行?看下版本以及是否被禁用彈框了:https://zhidao.baidu.com/ques...

2017年12月23日 19:30