一句就可以判断
window.location.href=/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)?"http://localhost:8888/mobile_web":"http://localhost:8888/PC"
如果是手机端跳转到 http://localhost:8888/mobile_web
如果是PC端跳转到 http://localhost:8888/PC
一.navigator.userAgent : 浏览器用于 HTTP 请求的用户代理头的值,通过UserAgent可以取得浏览器类别、版本,客户端操作系统等信息。
在PC端打开 ,navigator.userAgent 显示如下
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36在手机web端打开 ,navigator.userAgent 显示如下
Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1
二.navigator.userAgent 应用场景
-
判断页面是在手机端还是PC端打开
使用方法:
将手机端web代码放到mobile_web文件夹,PC端代码放到PC文件夹,然后在新建index.html中使用navigator.userAgent判断
<script>
console.log(navigator.userAgent);
window.location.href=/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)?"http://localhost:8888/mobile_web":"http://localhost:8888/PC";
</script>
- 判断页面是在手机端,平板端还是PC端打开(参考:http://hanxin0311.iteye.com/blog/2423111)
<script>
console.log(navigator.userAgent);
var os = function (){
var ua = navigator.userAgent,
isWindowsPhone = /(?:Windows Phone)/.test(ua),
isSymbian = /(?:SymbianOS)/.test(ua) || isWindowsPhone,
isAndroid = /(?:Android)/.test(ua),
isFireFox = /(?:Firefox)/.test(ua),
isChrome = /(?:Chrome|CriOS)/.test(ua),
isTablet = /(?:iPad|PlayBook)/.test(ua) || (isAndroid && !/(?:Mobile)/.test(ua)) || (isFireFox && /(?:Tablet)/.test(ua)),
isPhone = /(?:iPhone)/.test(ua) && !isTablet,
isPc = !isPhone && !isAndroid && !isSymbian;
return {
isTablet: isTablet,
isPhone: isPhone,
isAndroid: isAndroid,
isPc: isPc
};
}();
if (os.isAndroid || os.isPhone) {
console.log("手机")
} else if (os.isTablet) {
console.log("平板")
} else if(os.isPc) {
console.log("电脑")
}
</script>
- 获取操作系统类型,判断是Android或者IOS(参考:http://www.mamicode.com/info-detail-1317863.html)
/**
* 获取操作系统类型,
* 0 Android
* 1 iOS
*/
function getOSType() {
if (/(Android)/i.test(navigator.userAgent)) {
return 0;
} else if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {
return 1;
} else {
return 2;
}
}
4.判断当前环境是否是微信环境
function is_weixin(){
var ua = navigator.userAgent.toLowerCase();
if(ua.match(/MicroMessenger/i)=="micromessenger") {
return true;
} else {
return false;
}
}