📜  HTML | onbeforeunload 事件属性(1)

📅  最后修改于: 2023-12-03 15:31:14.984000             🧑  作者: Mango

HTML | onbeforeunload 事件属性

HTML 中的 onbeforeunload 事件属性是指在窗口关闭时触发的事件。该属性可在 window 对象或 document 对象上使用,用于在浏览器卸载页面或跳转到其他页面之前执行一些操作。该属性可用于实现一些用户提示或确认操作,例如提示用户保存未保存的数据,或要求用户确认是否需要修改离开页面等。

语法
window.onbeforeunload = function() {
  return "你确定要离开当前页面吗?";
}

window.addEventListener("beforeunload", function(event) {
  event.returnValue = "你确定要离开当前页面吗?";
});
属性值

onbeforeunload 事件属性的属性值是一个函数,该函数返回一个字符串。该字符串将显示给用户,以确认用户是否需要执行操作。如果该函数未返回任何值,则不会弹出任何提示给用户。

示例

以下示例演示如何使用 onbeforeunload 事件属性确认用户离开页面时是否保存未保存的数据:

<!DOCTYPE html>
<html>
<head>
  <title>JS Bin</title>
  <meta charset="utf-8">
  <script>
    window.onbeforeunload = function() {
      var textarea = document.getElementById("myTextarea");
      if (textarea.textContent !== "保存的数据") {
        return "您是否需要保存未保存的数据?";
      }
    }
  </script>
</head>
<body>
  <textarea id="myTextarea">保存的数据</textarea>
</body>
</html>
注意事项
  • onbeforeunload 事件属性只在窗口关闭前触发,不会影响用户打开的新窗口或标签页。
  • onbeforeunload 事件属性不能用于阻止窗口关闭或页面跳转,它只能用于提示用户确认或取消操作。
  • 该属性只在一些浏览器中支持,且可能由于浏览器设置等原因无法正常运行,因此需要根据具体情况使用其他方法来实现相同的功能。