过时浏览器兼容
博友璟雯与橙留言提醒,QQ浏览器查看本站是空白(对话详见留言)。
我在虚拟机 win10 上装了 QQ 浏览器检查发现 js 报错,不支持 replaceAll 等新方法。
QQ 浏览器的 Chrome 内核版本是 70:
获取到的 ua 是:
Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3883.400 QQBrowser/10.8.4559.400
replaceAll 方法需要 85 以上的 Chrome 内核才支持,详见caniuse:
本来打算将涉及到的新方法都自己实现一下兼容方法,但是后来发现 QQ 浏览器连 arr.shift 都报方法不存在,只能作罢了。
最终方案是根据 ua 判断 ie 内核或者 Chrome 内核小于 85 的浏览器(国产浏览器都是基于 ie + Chrome 内核),显示兼容页面(无js代码)。效果如下图:
只显示图文,屏蔽了评论等交互。至少不是空白页了。
标签: 开发