不少H5的項目,須要判斷宿主環境的處於什麼設備終端和瀏覽器環境, 好比微信微博釘釘的分享. 須要經過js就能夠判斷當前頁面是在什麼瀏覽器打開的。android
const browser = function() {
const ua = navigator.userAgent;
const appVersion = navigator.appVersion;
const version = {
isIos: !!ua.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), // ios 終端
//isMobile: !!ua.macth(/(iPhone|iPod|iPad|Android|ios)/i), // 是否移動終端
isMobile: !!ua.match(/AppleWebKit.*Mobile.*/), // 是否移動終端
isAndroid: ua.indexOf('Android') > -1 || ua.indexOf('Linux') > -1, // android 終端端或者uc 瀏覽器
// isAndroid: !!appVersion.match(/android/gi),
isIphone: !!ua.indexOf('iPhone') > -1, // 是否爲iPhone或則QQHD瀏覽器
// isIphone: !!appVersion.match(/iphone/gi);
iPad: ua.indexOf('iPad') > -1, // 是不是iPad
isWebApp: ua.indexOf('Safari') === -1, // 是否爲Webapp,沒有頭部和底部
isTrident: ua.indexOf('Trident') > -1, //IE內核
isPresto: ua.inexOf('Presto') > -1, // opera 內核
isWebKit: ua.indexOf('AppleWebkit') > -1, // 蘋果谷歌內核
isGecko: ua.indexOf('Gecko') > -1 && u.indexOf('KHTML') === -1, //火狐內核
isWechat: !!ua.match(/micromessenger/gi),
isWeiBo: !!ua.match(/weibo/gi),
isQQ: !!ua.match(/qq/gi),
}
const language = (navigator.browserLanguage || navigator.language).toLowerCase();
return {
version, language
}
}
複製代碼