JavaScript的onunload事件是当前页面将被改变时触发此事件。那么,这个词是什么意思呢?它是个组合词吧?请讲解一下它的意思
onunload 是一个由 on 和 unload 组成的组合词。
其中:
on表示“当……发生时”,是 JavaScript 事件处理程序的通用前缀。unload表示“卸载”,指页面资源的卸载过程。
因此,onunload 的字面意思是“当卸载发生时”,即当页面即将被卸载时触发的事件。
核心特性
触发时机:
onunload事件在以下情况触发:用户关闭浏览器标签页或窗口。
通过点击链接、提交表单或调用
location.href跳转到其他页面。使用
window.open打开新页面或调用window.close关闭当前页面。主要用途:常用于执行清理操作,如关闭数据库连接、删除临时文件或通知服务器用户已离开。
与
onbeforeunload的区别:onbeforeunload在onunload之前触发,可弹出确认框(如“确定离开当前页面吗?”)并阻止页面卸载。onunload无法阻止页面卸载,仅用于执行清理逻辑。
示例代码
<script>
window.onunload = function() {
alert("页面即将关闭,执行清理操作");
};
</script>此代码会在页面关闭时弹出提示框。
注意事项
刷新页面也会触发
onunload事件。若需区分关闭与刷新,可通过
window.screenTop或window.screenLeft判断浏览器窗口是否关闭。