前些天朋友问我怎么判断登陆端是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>