首页 >web前端 >js教程 >如何在浏览器窗口关闭或刷新时执行 JavaScript 代码?

如何在浏览器窗口关闭或刷新时执行 JavaScript 代码?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-11-18 06:38:02866浏览

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

在窗口关闭或页面刷新时执行 JavaScript 代码

在使用 Web 应用程序时,当用户关闭浏览器窗口或刷新页面。这允许您执行诸如保存用户数据、触发清理操作或跟踪网站使用情况等操作。

窗口关闭/刷新代码执行的可用选项

有两个主要的 JavaScript 事件监听器可用于此目的Purpose:

  • window.onbeforeunload: 当用户尝试关闭窗口或选项卡时触发此事件。它通过确认对话框提示用户(例如,“离开页面?”或“重新加载?”)。但是,如果没有返回字符串或 event.returnValue,则代码将执行而不显示消息。
  • window.onunload: 该事件在窗口关闭或页面关闭之前立即触发焕然一新。与 onbeforeunload 不同,它不会提示用户确认对话框。

事件监听器的使用

您可以使用以下方法将这些事件监听器分配给窗口属性以下语法:

window.onbeforeunload = function() {
  // Code to execute on window closure or refresh
};

// OR using addEventListener
window.addEventListener("beforeunload", function(e) {
  // Code to execute on window closure or refresh
});

注意事项iframes

如果 iframe 被其父级删除,则 beforeunload 事件在 iframe 内不起作用。但是,在 Chrome 中,卸载和页面隐藏事件在这种情况下确实有效。不幸的是,截至 2023 年 8 月,Firefox 有一个错误,导致这些事件无法用于 iframe 删除。

以上是如何在浏览器窗口关闭或刷新时执行 JavaScript 代码?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn