簡介
在網頁上進行文字編輯或其他變更並嘗試離開頁面時,瀏覽器可以顯示確認訊息提示要求使用者確認他們的導航。此功能對於防止使用者意外遺失未儲存的變更非常有用。
啟用提示
在舊版瀏覽器(IE6-8、Firefox 之前的版本)中啟用此導航確認提示至版本 4),為 window.onbeforeunload屬性分配一個函數參考:
window.onbeforeunload = function(e) { // For IE6-8 and Firefox prior to version 4 if (e) { e.returnValue = "Are you sure you want to leave?"; } // For Chrome, Safari, IE8+ and Opera 12+ return "Are you sure you want to leave?"; };
停用提示
要停用導覽確認提示,請從window.onbeforeunload 中刪除函數參考:
window.onbeforeunload = null;
檢查是否未儲存變更
無論頁面上是否有未儲存的更改,都會觸發使用者的確認。若要檢查未儲存的更改,您可以利用您首選的驗證框架或自訂解決方案。
例如,使用jQuery,您可以將更改事件綁定到表單字段,以在字段包含非-空值:
$('input').change(function() { if($(this).val() != "") { window.onbeforeunload = "Are you sure you want to leave?"; } });
注意:
在現代瀏覽器中,顯示自訂導覽確認訊息被視為一種安全隱患,已被刪除。瀏覽器現在僅顯示通用訊息。若要在現代瀏覽器中啟用或停用導覽提示,只需將 window.onbeforeunload 設定或刪除為不含傳回值的函數參考即可。
以上是如何實現「離開頁面」?舊版瀏覽器中是否出現確認提示?的詳細內容。更多資訊請關注PHP中文網其他相關文章!