首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JS魔法堂:定义页面的Dispose方法——unload事件启示录

这里涉及两点需要探讨: beforeunload和unload的功能定位是什么? beforeunload和unload的兼容性. beforeunload和unload的功能定位是什么?...(beforeunload事件的Cancelable属性值为Yes) beforeunload和unload的兼容性  对于移动端浏览器而言(Safari, Opera Mobile等)而言不支持beforeunload...的JS异常,而firefox下则连异常都懒得报。  既然不给用window.confirm,那么如何弹出二次确定对话框呢?其实beforeunload事件已经为我们准备好了。...以前,当我们从页面A跳转到页面B时,页面A的所有资源将被释放(销毁DOM对象,回收JS对象, 释放解码后的Image资源等);后来各大浏览器厂商分别采用bfcache/page cache/fast history...index.pageshow.persisted:true index.test:true //4 next.pageshow.persisted:true  看到页面是从bfcache恢复而来的,所以JS

2.2K90
您找到你想要的搜索结果了吗?
是的
没有找到

【兼容性】监听页面关闭发送请求

这个是前端兼容性系列内容 因为前端监控会在页面关闭的时候,发送一下日志,所以会涉及到监听页面关闭,之前我们只监听了一个beforeunload 来发送数据 但是我看了之后发现应该没有这么简单实现,前端总要写一些乱七八糟的兼容代码的啊...2、pagehide 3、unload 它们触发的顺序和列出来的一样,beforeunload->pagehide->unload 下面来看针对这些事件的兼容情况 测试结论 PC 端对于上面 四个动作...,3个事件 都支持,移动端则表现不一 先综述一下 1、 iOS 压根就不支持 beforeunload,unload 根据 iOS 版本支持程度也较低 2、Android 只有刷新支持 beforeunload...,而 unload 的话好一些,支持 刷新和关闭tab 3、HarmonyOs ,刷新和跳转 支持 beforeunload,unload 只有 刷新支持 具体数据如下 所以综上所述,beforeunload...也要做好错误处理 我搜到一个开源库的sendBeacon兼容处理 https://github.com/miguelmota/Navigator.sendBeacon/blob/master/sendbeacon.js

4.3K50

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券