如何判断WEB网站的访问端是电脑还是手机?以显示不同的页面!
其实可以通过JS脚本来实现:
<script type="text/javascript"> <!-- //平台、设备和操作系统 var system = { win: false, mac: false, xll: false, ipad:false }; //检测平台 var p = navigator.platform; system.win = p.indexOf("Win") == 0; system.mac = p.indexOf("Mac") == 0; system.x11 = (p == "X11") || (p.indexOf("Linux") == 0); system.ipad = (navigator.userAgent.match(/iPad/i) != null)?true:false; //跳转语句,如果是手机访问就自动跳转到wap.baidu.com页面 if (system.win || system.mac || system.xll||system.ipad) { } else { window.location.href = "http://www.jdpatro.com/3g/"; } --> </script>
腾讯网的适配代码:
<script type="text/javascript"> if(/AppleWebKit.*Mobile/i.test(navigator.userAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))){ if(window.location.href.indexOf("?mobile")<0){ try{ if(/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)){ window.location.href="http://shipei.qq.com/index.htm"; }else if(/iPad/i.test(navigator.userAgent)){ }else{ window.location.href="http://shipei.qq.com/simple/s/index/" } }catch(e){} } } </script>
<script type="text/javascript"> 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.*/) || !!u.match(/AppleWebKit/), //是否为移动终端 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 || u.indexOf(‘Mac‘) > -1, //是否为iPhone或者QQHD浏览器 iPad: u.indexOf(‘iPad‘) > -1, //是否iPad webApp : u.indexOf(‘Safari‘) == -1,//是否web应该程序,没有头部与底部 google:u.indexOf(‘Chrome‘)>-1 }; }(), language : (navigator.browserLanguage || navigator.language).toLowerCase() } document.writeln("语言版本: "+browser.language); document.writeln(" 是否为移动终端: "+browser.versions.mobile); </script>
如何判断是否是 iPad 浏览器呢,关键是看它的 User Agent 中是否有 iPad。iPad 使用的是 Safari Mobile 浏览器,他的的 User Agent 是:
Mozilla/5.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B334b Safari/531.21.10 function is_iPad(){ [object Object] [object Object] [object Object]var ua = navigator.userAgent.toLowerCase(); [object Object] [object Object] [object Object]if(ua.match(/iPad/i)=="ipad") { [object Object] [object Object] [object Object] [object Object] [object Object] [object Object]return true; [object Object] [object Object] [object Object]} else { [object Object] [object Object] [object Object] [object Object] [object Object] [object Object]return false; [object Object] [object Object] [object Object]} } $is_iPad = (bool) strpos($_SERVER[‘HTTP_USER_AGENT‘],‘iPad‘); RewriteCond %{HTTP_USER_AGENT} ^.*iPad.*$ RewriteRule ^(.*)$ http://ipad.fairyfish.net [R=301]
JS 判断浏览器客户端类型(ipad,iphone,android):
<script type="text/javascript"> var bForcepc = fGetQuery("dv") == "pc"; function fBrowserRedirect(){ 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){ var sUrl = location.href; if(!bForcepc){ window.location.href = "http://ipad.mail.163.com/"; } } if(bIsIphoneOs || bIsAndroid){ var sUrl = location.href; if(!bForcepc){ window.location.href = "http://smart.mail.163.com/"; } } if(bIsMidp||bIsUc7||bIsUc||bIsCE||bIsWM){ var sUrl = location.href; if(!bForcepc){ window.location.href = "http://m.mail.163.com/"; } } } function fGetQuery(name){//获取参数值 var sUrl = window.location.search.substr(1); var r = sUrl.match(new RegExp("(^|&)" + name + "=([^&]*)(&|$)")); return (r == null ? null : (r[2])); } function fShowVerBlock(){ if(bForcepc){ document.getElementByIdx_x("dv_block").style.display = "block"; } else{ document.getElementByIdx_x("ad_block").style.display = "block"; } } fBrowserRedirect(); </script>
本文出自 “灵雨飘零博客” 博客,请务必保留此出处http://kingrain.blog.51cto.com/91779/1602461
原文地址:http://kingrain.blog.51cto.com/91779/1602461