不少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
}
}
复制代码