需求:因为项目只能用极速模式(webkit)访问,所以在用户使用非极速模式访问时,页面空白无反馈。
解决:检测用户当前浏览器内核,若非webkit内核则弹出提示并自动下载谷歌浏览器。
效果:
创建getVendorPrefix.js文件如下:
function getVendorPrefix() {
const body = document.body || document.documentElement
const style = body.style
const vendor = ['webkit', 'khtml', 'moz', 'ms', 'o']
let i = 0
while (i < vendor.length) {
// 此处进行判断是否有对应的内核前缀
if (typeof style[vendor[i] + 'Transition'] === 'string') {
return vendor[i]
}
i++
}
}
if (getVendorPrefix() !== 'webkit') {
window.location.href = 'https://dl-sh-ctc-2.pchome.net/31/dt/78.0.3904.70_chrome_installer32.zip?key=93cb618a96554ba17929b4503f2427ec&tmp=1573693848210'
alert('检测到您的浏览器无法正常访问系统,请将浏览器切换到 极速内核/极速模式!(点击地址栏最右侧的浏览器图标切换),强烈建议使用 谷歌Chrome浏览器 (已为您转至快速下载地址)!')
}
在index.html中应用即可
<script language="JavaScript" src="./static/getVendorPrefix.js"></script>