js设备判断_判断移动端还是PC端?判断android还是ios?判断移动端浏览器类型?

摘要:js判断用户的浏览设备是移动设备还是PC?判断详细浏览器设备信息。判断微信、新浪、QQ打开。判断是android系统还是ios系统...

1、js判断用户的浏览设备是移动设备还是PC?

方法一:
<script>
var isPC = function (){
    var userAgentInfo = navigator.userAgent.toLowerCase();
    var Agents = new Array("android", "iphone", "symbianOS", "windows phone", "ipad", "ipod");
    var flag = true;
    for (var v = 0; v < Agents.length; v++) {
        if (userAgentInfo.indexOf(Agents[v]) > 0) { flag = false; break; }
    }
    return flag;
}
var isPC = isPC();
if(!isPC){      
      console.log("移动端");
}
</script>


方法二:

<script type="text/javascript">
    function browserRedirect() {
      var sUserAgent = navigator.userAgent.toLowerCase();
      var bIsIpad = sUserAgent.match(/ipad/i) == "ipad";
      var bIsIphoneOs = sUserAgent.match(/iphone os/i) == "iphone os";
      var bIsMidp = sUserAgent.match(/midp/i) == "midp";
      var bIsUc7 = sUserAgent.match(/rv:1.2.3.4/i) == "rv:1.2.3.4";
      var bIsUc = sUserAgent.match(/ucweb/i) == "ucweb";
      var bIsAndroid = sUserAgent.match(/android/i) == "android";
      var bIsCE = sUserAgent.match(/windows ce/i) == "windows ce";
      var bIsWM = sUserAgent.match(/windows mobile/i) == "windows mobile";
      document.writeln("您的浏览设备为:");
      if (bIsIpad || bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM) {
        console.log("移动端");
      } else {
        console.log("PC端");
      }
    }
    browserRedirect();
</script>


2、判断详细浏览器设备信息

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('Linux') > -1, //android终端或uc浏览器
         iPhone: u.indexOf('iPhone') > -1, //是否为iPhone或者QQHD浏览器
         iPad: u.indexOf('iPad') > -1, //是否iPad
         webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部
       };
    }(),
    language: (navigator.browserLanguage || navigator.language).toLowerCase()
} 
console.log(browser.language);//系统语言
console.log(browser.versions);//设备信息判断

通过上面的代码,可以很容易的实现:

1.是移动端还是pc端打开:

if (browser.versions.mobile) {//判断是否是移动设备打开
	console.log("移动设备");
}else{
	console.log("PC设备");
}

2.判断是ios浏览器打开,还是安卓浏览器打开:

if (browser.versions.ios) { 
   //是否在IOS浏览器打开 
} 
if(browser.versions.android){ 
   //是否在安卓浏览器打开 
}


3、判断微信、新浪、QQ打开:

var ua = navigator.userAgent.toLowerCase();//获取判断用的对象
if (ua.match(/MicroMessenger/i) == "micromessenger") {
    //在微信中打开
}
if (ua.match(/WeiBo/i) == "weibo") {
    //在新浪微博客户端打开
}
if (ua.match(/QQ/i) == "qq") {
    //在QQ空间打开
}


4、判断是android系统还是ios系统

var ua = navigator.userAgent.toLowerCase();
if(ua.match(/iPhone\sOS/i) == "iphone os"){//ios
    //ios打开		        
}
if(ua.match(/Android/i) == "android") {
    //android打开
}




本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!

链接: https://shenqiku.cn/article/FLY_505