2013-12-19 82 views
0

我添加了一個確認框,它在用戶刷新頁面時以及當用戶嘗試從當前頁面導航時起作用。但我希望這樣做可以取消離開頁面的操作。我不知道如何實現這一點。Javascript確認方法

我的另一個問題是,此代碼只適用於EI,而不適用於Firefox或Chrome。通常情況是相反的。但是,也許我應該將瀏覽器問題作爲單獨的帖子發佈?

<!DOCTYPE html> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
     <title>Verify</title>  
     <script type="text/javascript"> 
      function handleRequest() { 
       if(confirm('Sure you want to quit?')) { 
       // redirect or quit; 
       } else { 
        //Do not change page or quit 
       } 
      } 
     </script> 

    <body onunload="handleRequest()"> 

     <p></p> 
     <p>Body content</p> 
    </body> 

</html> 

回答

2

使用onbeforeunload

window.onbeforeunload = function(e) { 
    return 'Dialog text here.'; 
}; 

它會打開對話框,詢問用戶逗留或從頁面消失。這是本地瀏覽器行爲。

+0

你將如何在標籤使用呢? – user1960836

+0

@ user1960836這是沒有必要的。只需在結束''標籤之前將此代碼放置在'

1

只能用onbeforeunload取消它,並返回false到事件:

<body onbeforeunload="return confirm('Sure you want to quit?');"> 
+0

所以你只要在else語句中返回false來取消? – user1960836

+0

你的建議像魅力一樣工作。謝謝 – user1960836