Home > Web Front-end > JS Tutorial > body text

js determines whether it is PC or mobile

小云云
Release: 2018-03-26 17:31:32
Original
3959 people have browsed it

本文主要和大家分享js判断是PC端还是移动端的方法,希望能帮助到大家。

#### 方案1:"
function IsPC() {
    var userAgentInfo = navigator.userAgent;
    var Agents = ["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;
}
"
Copy after login

#### 方案2:

"
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";
    if (!(bIsIpad || bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM) ){
        window.location.href=B页面;
    }
}
browserRedirect();
"
Copy after login

#### 方案3:

"
var browser_class = navigator.userAgent;
var browser_class_name1 = browser_class.match("Mobile");
var browser_class_name2 = browser_class.match("mobile");
var location_url = window.location.href;
if (browser_class_name1 != null || browser_class_name2 != null) {
 if (location_url.match("wap") == null) {
  window.location.href = "http://wap.xxxx.com";
 }
} else {
 if (location_url.match("3g") != null || location_url.match("wap") != null) {
  window.location.href = "http://wap.xxxx.com";
 }
}
"
Copy after login

#### 百度方案:

"
function uaredirect(f) {
 try {
  if (document.getElementById("bdmark") != null) {
   return
  }
  var b = false;
  if (arguments[1]) {
   var e = window.location.host;
   var a = window.location.href;
   if (isSubdomain(arguments[1], e) == 1) {
    f = f + "/#m/" + a;
    b = true
   } else {
    if (isSubdomain(arguments[1], e) == 2) {
     f = f + "/#m/" + a;
     b = true
    } else {
     f = a;
     b = false
    }
   }
  } else {
   b = true
  }
  if (b) {
   var c = window.location.hash;
   if (!c.match("fromapp")) {
    if ((navigator.userAgent.match(/(iPhone|iPod|Android|ios|SymbianOS)/i))) {
     location.replace(f)
    }
   }
  }
 } catch(d) {}
}
function isSubdomain(c, d) {
 this.getdomain = function(f) {
  var e = f.indexOf("://");
  if (e > 0) {
   var h = f.substr(e + 3)
  } else {
   var h = f
  }
  var g = /^www\./;
  if (g.test(h)) {
   h = h.substr(4)
  }
  return h
 };
 if (c == d) {
  return 1
 } else {
  var c = this.getdomain(c);
  var b = this.getdomain(d);
  if (c == b) {
   return 1
  } else {
   c = c.replace(".", "\\.");
   var a = new RegExp("\\." + c + "$");
   if (b.match(a)) {
    return 2
   } else {
    return 0
   }
  }
 }
};
"
Copy after login

使用方法:

"
<SCRIPT type=text/javascript>uaredirect("手机站","WEB站");</SCRIPT>
"
Copy after login

#### 类似方案:

"
//判断访问的设备信息
var ua = window.navigator.userAgent.toLowerCase();
if (ua.indexOf(&#39;android&#39;) != -1) {
    window.location = path + "/DownloadSoftWare/" + name + "/" + id+ "/";
} else if (ua.indexOf(&#39;iphone&#39;) != -1 || ua.indexOf(&#39;ipad&#39;) != -1) {
    window.top.location = "苹果官网";
} else if (ua.indexOf("Window NT")) {
    window.top.location = path + "/";
} else {
    alert("sorry,暂不支持您的系统下载!!");
}
"
Copy after login

设备信息:
> Mac:
> "
> mozilla/5.0 (macintosh; intel mac os x 10_11_6) applewebkit/604.4.7 (khtml, like gecko) version/11.0.2 safari/604.4.7
> "
> Windows:
> "
> mozilla/5.0 (windows nt 6.1; wow64) applewebkit/537.36 (khtml, like gecko) chrome/62.0.3202.94 safari/537.36
> "
> iPad:
> "
> mozilla/5.0 (ipad; cpu os 9_1 like mac os x) applewebkit/601.1.46 (khtml, like gecko) version/9.0 mobile/13b143 safari/601.1
> "
> iPhone:
> "
> mozilla/5.0 (iphone; cpu iphone os 9_1 like mac os x) applewebkit/601.1.46 (khtml, like gecko) version/9.0 mobile/13b143 safari/601.1
> "
> Android:
> "
> mozilla/5.0 (linux; android 5.0; sm-g900p build/lrx21t) applewebkit/537.36 (khtml, like gecko) chrome/62.0.3202.94 mobile safari/537.36
> "

相关推荐:

PHP如何判断是否为手机端

PHP判断手机端、PC端 、微信示例代码分享

js判断手机端(Android手机还是iPhone手机)_javascript技巧

The above is the detailed content of js determines whether it is PC or mobile. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!