首頁 > web前端 > js教程 > 如何在瀏覽器視窗關閉或刷新時執行 JavaScript 程式碼?

如何在瀏覽器視窗關閉或刷新時執行 JavaScript 程式碼?

Barbara Streisand
發布: 2024-11-22 02:04:14
原創
584 人瀏覽過

How do I Execute JavaScript Code When a Browser Window Closes or Refreshes?

在視窗關閉或頁面重新整理時執行JavaScript 程式碼

當使用者關閉瀏覽器視窗或重新整理頁面時,通常需要執行最後一點代碼。與 onload 事件類似,但對於關閉或刷新,主要有兩個選項:onbeforeunload 和 onunload。

window.onbeforeunload 和 window.onunload

這兩個事件處理程序可讓您在視窗關閉或刷新時執行程式碼。主要差異在於 onbeforeunload 在瀏覽器提示使用者確認對話方塊(例如「離開頁面?」或「重新載入?」)之前觸發,而 onunload 在使用者確認操作後觸發。

用法:

您可以透過直接設定視窗屬性或使用addEventListener 為這些事件處理程序指派函數

直接賦值:

window.onbeforeunload = function() {
  // Do something
};
window.onunload = function() {
  // Do something
};
登入後複製

addEventListener方法:

window.addEventListener('beforeunload', function(e) {
  // Do something
});
window.addEventListener('unload', function(e) {
  // Do something
});
登入後複製

注意事項onbeforeunload:

通常,onbeforeunload 用於防止使用者離開頁面(例如,如果他們有未儲存的資料) 。但是,您可以透過不傳回字串或設定 event.returnValue 來阻止確認對話方塊。

其他注意事項:

  • Iframe 刪除: 如果iframe 被其父級刪除,則beforeunload 事件不起作用,但unload 和pagehide 事件在大多數現代瀏覽器中都起作用。
  • Firefox 錯誤:截至 2023 年 8 月,Firefox 存在錯誤,卸載和頁面隱藏事件不適用於 iframe 刪除。

以上是如何在瀏覽器視窗關閉或刷新時執行 JavaScript 程式碼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板