2014-03-28 30 views
2

我想問一下,如果他真的想離開YouTube播放視頻的頁面。但在提問「你確定要離開頁面嗎?」之前,我想暫停視頻。 我嘗試使用此代碼(而不是暫停視頻,我只是在div中寫入內容),但div的內容僅在用戶決定留在頁面後纔會更改...是否有解決此問題的方法?windows.onbeforeunload - 有沒有在離開/停留之前調用函數的方法?

<script> 
     var confirmOnLeave = function(msg) { 
      window.onbeforeunload = function (e) {   

       e = e || window.event; 
       msg = msg || ''; 
       document.getElementById('test').innerHTML = 'stop'; 
       // For IE and Firefox 
       if (e) {e.returnValue = msg;} 

       // For Chrome and Safari 
       return msg; 
      }; 

     }; 
     confirmOnLeave('Are you sure to leave the page ?'); 
    </script> 
    <body> 
    <div id='test'> a </div> 
    </body> 

的jsfiddle:http://jsfiddle.net/Yrs47/

感謝,

回答

1

都能跟得上 - 「作品設計的。」

回到當天,很多網站會濫用onbeforeunload做一些事情 - 重新加載當前頁面,打開一大堆彈出式窗口或者取消導航。

現在 - 有一個半可控的動作,您可以可以做。使用Javascript,您可以連接到頁面上的每個link並打開對話框,詢問他們想要做什麼。這可能會滿足您的一些需求,但不會讓人們打開書籤,點擊back按鈕或輸入新的URL。

相關問題