videojs IE最小化崩溃兼容处理方案

videojs 在 IE 下最小化直接崩溃?你没看错,确实挺坑。还好这边摸索出一套靠谱的方案,亲测有效,尤其适用于老项目还得兼容 IE 的情况。

videojs的播放器在 IE 浏览器下有个毛病:只要你把窗口最小化,播放器就容易卡死甚至整个页面崩溃。最常见的触发点就是视频暂停时切窗口,真是让人抓狂。

你可以考虑通过判断document.visibilityState或监听visibilitychange事件,在页面隐藏的时候暂停或卸载 videojs 组件,窗口恢复再初始化。这样做的好处是能最大限度避免 IE 的兼容性 Bug。

参考资料里也有不少灵感来源,比如在 IE 浏览器最小化后弹窗VBS 最小化问题,还有窗口截图的源码,都可以搭配着研究一下。

,IE 这类老家伙,没法硬刚就只能软着来。如果你手头项目还要兼容 IE,建议你尽量减少 DOM 操作和多媒体模块在窗口状态切换过程中的活跃度。

如果你也碰上类似问题,先试着在blurvisibilitychange里把 videojs 给 disable 掉,再结合你项目的业务节奏恢复它,效果还不错。

txt 文件大小:1.12KB