JS判断登陆端是PC还是手机

时间:2021-10-17 20:42:03

前些天朋友问我怎么判断登陆端是PC还是手机。。。自己也是很困惑,然后自己查了资料,这些东西都藏在USER-AGENT里面,查了他的一些属性,写了一个简单的验证页面大家共同学习。

读取navigator.userAgent里面的信息,为了方便利用toLowerCase方法转成小写的形式。然后用MATCH方法进行匹配版本信息,这里提供了多个版本的测试信息,可以用来做后续代码的接口。这里作统一或起来判断登陆端是否是手机~~程序很简单,主要还是丰富JS知识吧。下面是个简单的小例子,希望对你有帮助。

<!doctype html>
<html>
<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"; if (bIsIpad || bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM) {
document.getElementById("a").style.display="block";
document.getElementById("b").style.display="none";
} else {
document.getElementById("b").style.display="block";
document.getElementById("a").style.display="none"; }
}
window.onload=function(){browserRedirect();}
</script>
<meta charset="utf-8"/>
<head>
<title>web1</title>
</head>
<body>
<div id="a"><p>这是手机</p></div>
<div id="b"><p>这是电脑</p></div>
</body> </html>