首页 > 编程 > JavaScript > 正文

JS判断客户端是手机还是PC的2个代码

2019-11-20 20:50:06
字体:
来源:转载
供稿:网友

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;}

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();

百度的判断代码

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  } } }};

使用方法:
<SCRIPT type=text/javascript>uaredirect("手机站","WEB站");</SCRIPT>

另外一篇,感觉不如上面的好,不过大家可以参考下

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"; }}

这篇文章就介绍到这了,具体的也可以参考下面的文章。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表