videojs IE最小化崩溃兼容处理方案
videojs 在 IE 下最小化直接崩溃?你没看错,确实挺坑。还好这边摸索出一套靠谱的方案,亲测有效,尤其适用于老项目还得兼容 IE 的情况。
videojs的播放器在 IE 浏览器下有个毛病:只要你把窗口最小化,播放器就容易卡死甚至整个页面崩溃。最常见的触发点就是视频暂停时切窗口,真是让人抓狂。
你可以考虑通过判断document.visibilityState
或监听visibilitychange
事件,在页面隐藏的时候暂停或卸载 videojs 组件,窗口恢复再初始化。这样做的好处是能最大限度避免 IE 的兼容性 Bug。
参考资料里也有不少灵感来源,比如在 IE 浏览器最小化后弹窗、VBS 最小化问题,还有窗口截图的源码,都可以搭配着研究一下。
,IE 这类老家伙,没法硬刚就只能软着来。如果你手头项目还要兼容 IE,建议你尽量减少 DOM 操作和多媒体模块在窗口状态切换过程中的活跃度。
如果你也碰上类似问题,先试着在blur
或visibilitychange
里把 videojs 给 disable 掉,再结合你项目的业务节奏恢复它,效果还不错。
1.12KB
文件大小:
评论区