Chrome 浏览器关闭时不触发 `onbeforeunload` 事件,如何解决?
知识点掌握了,还需要不断练习才能熟练运用。下面米云给大家带来一个文章开发实战,手把手教大家学习《Chrome 浏览器关闭时不触发 `onbeforeunload` 事件,如何解决?》,在实现功能的过程中也带大家重新温习相关知识点,温故而知新,回头看看说不定又有不一样的感悟!

Chrome onbeforeunload 事件失效,替代方案
在使用 Chrome 浏览器时,发现 window.onbeforeunload 事件在关闭浏览器时不触发。对于此问题,存在以下替代方案:
- beforeunload 事件
该事件在页面即将卸载时触发,包括关闭浏览器、切换标签页以及从页面导航到其他页面。不过,与 onbeforeunload 事件不同,beforeunload 事件无法阻止页面卸载。
- unload 事件
该事件在页面卸载后触发,但在此事件中,无法阻止页面卸载或修改页面。
- 页面可见性 API
此 API 提供页面可见性信息,可以使用它来检测页面何时进入后台。当页面进入后台时,可以显示一条提示消息,询问用户是否要离开页面。
- 确认对话框
可以在关闭浏览器之前显示一个确认对话框,询问用户是否要离开页面。这可以在用户退出之前向其提供最后的确认。
测试结果
在 Chrome 73.0.3683.103 版本中进行测试发现:
- 直接关闭页面不会触发 onbeforeunload 事件。
- 与页面交互(如单击链接)后关闭页面,会触发 onbeforeunload 事件。
好了,本文到此结束,带大家了解了《Chrome 浏览器关闭时不触发 `onbeforeunload` 事件,如何解决?》,希望本文对你有所帮助!关注米云公众号,给大家分享更多文章知识!
- 父元素仅设置 Line-height 对子元素高度的影响:行内块级元素与块级元素有什么区别?
