首頁 >web前端 >js教程 >如何在使用者關閉瀏覽器視窗或重新整理頁面之前執行程式碼?

如何在使用者關閉瀏覽器視窗或重新整理頁面之前執行程式碼?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-18 12:00:05366瀏覽

How do I Execute Code Before a User Closes the Browser Window or Refreshes the Page?

在視窗關閉或頁面刷新之前執行程式碼

要在使用者關閉瀏覽器視窗或重新整理頁面時執行程式碼,請考慮使用window.onbeforeunload 和window.onunload 事件處理程序。這些處理程序根據瀏覽器的不同而具有不同的行為。

分配事件處理程序

您可以使用屬性分配或 addEventListener 方法來設定這些事件處理程序:

// Property assignment
window.onbeforeunload = function() { 
  // Code to execute
};

// Event listener
window.addEventListener("beforeunload", function(e) { 
  // Code to execute
});

window.onbeforeunload事件

window.onbeforeunload 通常用來防止使用者離開未儲存變更的頁面。但是,如果您不傳回字串或設定 event.returnValue,則事件將靜默執行程式碼。

window.onunload 事件

window.onunload 是一個在頁面卸載之前觸發的更全面的事件。它允許您執行追蹤用戶活動或保存本地儲存等任務。

注意:

  • window.onbeforeunload 可能無法在被刪除的 iframe 中工作他們在 Firefox 中的父級(截至 2023 年 8 月)。
  • 考慮使用 window.pagehide 而不是window.onbeforeunload 用於 Firefox 中的 iframe。

以上是如何在使用者關閉瀏覽器視窗或重新整理頁面之前執行程式碼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn