能判断是电脑端还是手机端的javascript,自动跳转到手机wap版网站

其他技术 站长 浏览 评论

开始专业人士和我说,将来(也就是现在)会是移动互联网的世界,起初我很怀疑,因为虽然随身携带的手机虽然很是便捷,但是和电脑比起来有些方面使用起来还是很多不便,比如键盘太小、屏幕太小、不能插usb等。
当然一件似乎不大可能的事儿,快速的发展离不开蝴蝶效应,和攀比心理。
其实很多年前就有寻找一种可以失败终端的代码,这样就可以给用户提供合适的交互界面,比较百度的优化很离谱,浏览器的压缩很奇怪。
今天帮李军同学测试站点是否被猎豹浏览器屏蔽,不小心在他博客发现了这样的代码。是的这么好的东西怎么忍心不分享,比较现在已经是移动互联网的世界了,手机浏览器的天下了。很多中小型站长应该很需要这样的代码。

使用方法:将下面代码放入你需要识别页面的hade标签前面,然后将下面的http://m.edou.me 修改为您的手机版站点的地址!

<!—识别手机或电脑的js开始—>
<script language=”javascript”>
(function(){
var res = GetRequest();
var par = res[‘index’];
if(par!=’gfan’){
var ua=navigator.userAgent.toLowerCase();
var contains=function (a, b){
if(a.indexOf(b)!=-1){return true;}
};
//将下面的http://m.edou.me改成你的wap手机版地址 如我的 http://m.edou.me
var toMobileVertion = function(){
window.location.href = ‘http://m.edou.me/’
}

if(contains(ua,”ipad”)||(contains(ua,”rv:1.2.3.4″))||(contains(ua,”0.0.0.0″))||(contains(ua,”8.0.552.237″))){return false}
if((contains(ua,”android”) && contains(ua,”mobile”))||(contains(ua,”android”) && contains(ua,”mozilla”)) ||(contains(ua,”android”) && contains(ua,”opera”))
||contains(ua,”ucweb7″)||contains(ua,”iphone”)){toMobileVertion();}
}
})();
function GetRequest() {
var url = location.search; //获取url中”?”符后的字串
var theRequest = new Object();
if (url.indexOf(“?”) != -1) {
var str = url.substr(1);
strs = str.split(“&”);
for(var i = 0; i < strs.length; i ++) {
theRequest[strs[i].split(“=”)[0]]=unescape(strs[i].split(“=”)[1]);
}
}
return theRequest;
}
</script>
<!—识别手机或电脑的js结束—>

另外,还有两段代码,大家可以学习学习
PHP检测代码:

function is_mobile() {
var regex_match = /(nokia|iphone|android|motorola|^mot-|softbank|foma|docomo|kddi|up.browser|up.link|htc|dopod|blazer|netfront|helio|hosin|huawei|novarra|CoolPad|webos|techfaith|palmsource|blackberry|alcatel|amoi|ktouch|nexian|samsung|^sam-|s[cg]h|^lge|ericsson|philips|sagem|wellcom|bunjalloo|maui|symbian|smartphone|midp|wap|phone|windows ce|iemobile|^spice|^bird|^zte-|longcos|pantech|gionee|^sie-|portalmmm|jigs browser|hiptop|^benq|haier|^lct|operas*mobi|opera*mini|320×320|240×320|176×220)/i;
var u = navigator.userAgent;
if (null == u) {
return true;
}
var result = regex_match.exec(u);
if (null == result) {
return false
} else {
return true
}
}
if (is_mobile()) {
document.location.href= ‘http://m.edou.me/’;
}

ASP检测代码:

HTTP_ACCEPT=Request.ServerVariables(“HTTP_ACCEPT”) ‘获取浏览器信息
HTTP_USER_AGENT=LCase(Request.ServerVariables(“HTTP_USER_AGENT”)) ‘获取AGENT
HTTP_X_WAP_PROFILE=Request.ServerVariables(“HTTP_X_WAP_PROFILE”) ‘WAP特定信息 品牌机自带浏览器都会有
HTTP_UA_OS=Request.ServerVariables(“HTTP_UA_OS”) ‘手机系统 电脑为空
HTTP_VIA=LCase(Request.ServerVariables(“HTTP_VIA”)) ‘网关信息
Dim WapStr
WAPstr=False
If ubound(split(HTTP_ACCEPT,”vnd.wap”))>0 Then WAPstr=True
If HTTP_USER_AGENT=”” Then WAPstr=True
If HTTP_X_WAP_PROFILE<>”” Then WAPstr=True
If HTTP_UA_OS<>”” Then WAPstr=True
IF ubound(split(HTTP_VIA,”wap”))>0 Then WAPstr=True
IF ubound(split(HTTP_USER_AGENT,”netfront”))>0 Then WAPstr=True
IF ubound(split(HTTP_USER_AGENT,”iphone”))>0 Then WAPstr=True
IF ubound(split(HTTP_USER_AGENT,”opera mini”))>0 Then WAPstr=True
IF ubound(split(HTTP_USER_AGENT,”ucweb”))>0 Then WAPstr=True
IF ubound(split(HTTP_USER_AGENT,”windows ce”))>0 Then WAPstr=True
IF ubound(split(HTTP_USER_AGENT,”symbianos”))>0 Then WAPstr=True
IF ubound(split(HTTP_USER_AGENT,”java”))>0 Then WAPstr=True
IF ubound(split(HTTP_USER_AGENT,”android”))>0 Then WAPstr=True
If WAPstr=True Then
Response.Write “我是手机访问”
” response.redirect “http://m.edou.me/”
else
Response.Write “我是PC访问”
” response.redirect “http://m.edou.me/”
End if

转载请注明:网页阁吧 » 能判断是电脑端还是手机端的javascript,自动跳转到手机wap版网站