Tulis sekeping kod untuk menilai versi mudah alih dan melompat, tetapi ia tidak akan dilaksanakan pada versi mudah alih uc, qq dan Sogou, tetapi ia boleh dilaksanakan pada penyemak imbas mudah alih chrome, Xiaomi dan WeChat
var browser = {
versions: function () {
var u = navigator.userAgent, app = navigator.appVersion;
return {
trident: u.indexOf('Trident') > -1, //IE内核
presto: u.indexOf('Presto') > -1, //opera内核
webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核
gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1,//火狐内核
mobile: !!u.match(/AppleWebKit.*Mobile.*/), //是否为移动终端
ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端
android: u.indexOf('Android') > -1 || u.indexOf('Adr') > -1, //android终端
iPhone: u.indexOf('iPhone') > -1, //是否为iPhone或者QQHD浏览器
iPad: u.indexOf('iPad') > -1, //是否iPad
webApp: u.indexOf('Safari') == -1, //是否web应该程序,没有头部与底部
weixin: u.indexOf('MicroMessenger') > -1, //是否微信 (2015-01-22新增)
qq: u.match(/\sQQ/i) == " qq" //是否QQ
};
}(),
};
if (browser.versions.android || browser.versions.ios || browser.versions.mobile || browser.versions.iPhone||browser.versions.webApp||browser.versions.weixin||browser.versions.qq) {
window.location = 'mobileWeb.html'
}
"SE" menilai Sogou, "UBrowser" menilai UC, anda perlu menambah dua, mengubah suai "QQBrowser" untuk menilai QQ, dan kemudian mencubanya
Akhirnya saya mendapati bahawa ia ternyata merupakan ayat sintaks es6, yang tidak disokong oleh pelayar uc, sogou dan qq, menyebabkan kod ralat tidak dapat dilaksanakan. . . Selepas memuat turun alat penyahpepijatan vConsole, ralat telah dipaparkan pada terminal mudah alih.
Zhengze tidak dapat menandingi Sa. Cetak ua dan lihat sendiri di mana tiada padanan. Tidakkah ua mudah alih mempunyai kata kunci mudah alih yang lebih ringkas? Adakah ia begitu rumit?