js根据手机客户端浏览器类型,判断跳转官网/手机网站多个实例代码
实例一、比较简单粗暴缺少点类型判断
<scripttype="text/javascript"> varsUserAgent=navigator.userAgent.toLowerCase(); varbIsIpad=sUserAgent.match(/ipad/i)=="ipad"; varbIsIphoneOs=sUserAgent.match(/iphoneos/i)=="iphoneos"; varbIsMidp=sUserAgent.match(/midp/i)=="midp"; varbIsUc7=sUserAgent.match(/rv:1.2.3.4/i)=="rv:1.2.3.4"; varbIsUc=sUserAgent.match(/ucweb/i)=="ucweb"; varbIsAndroid=sUserAgent.match(/android/i)=="android"; varbIsCE=sUserAgent.match(/windowsce/i)=="windowsce"; varbIsWM=sUserAgent.match(/windowsmobile/i)=="windowsmobile"; if(bIsIpad||bIsIphoneOs||bIsMidp||bIsUc7||bIsUc||bIsAndroid||bIsCE||bIsWM){ window.location.href="3g.php"; } </script>
实例二、代码工整,很多的函数都基于这个增加的功能
<script> varpc_style="" varbrowser={ versions:function(){ varu=navigator.userAgent,app=navigator.appVersion; return{ trident:u.indexOf('Trident')>-1, presto:u.indexOf('Presto')>-1, webKit:u.indexOf('AppleWebKit')>-1, gecko:u.indexOf('Gecko')>-1&&u.indexOf('KHTML')==-1, mobile:!!u.match(/AppleWebKit.*Mobile.*/)||!!u.match(/AppleWebKit/)&&u.indexOf('QIHU')&&u.indexOf('QIHU')>-1&&u.indexOf('Chrome')<0, ios:!!u.match(/\(i[^;]+;(U;)?CPU.+MacOSX/), android:u.indexOf('Android')>-1||u.indexOf('Linux')>-1, iPhone:u.indexOf('iPhone')>-1||u.indexOf('Mac')>-1, iPad:u.indexOf('iPad')>-1, webApp:u.indexOf('Safari')==-1, ua:u }; }(), language:(navigator.browserLanguage||navigator.language).toLowerCase() } if(browser.versions.mobile&&!browser.versions.iPad){ this.location="此处输入跳转微站首页地址"; } </script>
实例三、增加了一些功能
<!--智能手机判断开始--> <!-- <scripttype="text/javascript"language="javascript"> Function.prototype.bind=function(bindObj,args){ var_self=this; returnfunction(){ return_self.apply(bindObj,[].concat(args)) } }; function$(id){ return"string"==typeofid?document.getElementById(id):id; }; varbrowser={ versions:function(){ varu=navigator.userAgent, app=navigator.appVersion; return{ trident:u.indexOf('Trident')>-1, presto:u.indexOf('Presto')>-1, 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.+MacOSX/), android:u.indexOf('Android')>-1||u.indexOf('Linux')>-1, iPhone:u.indexOf('iPhone')>-1||u.indexOf('Mac')>-1, iPad:u.indexOf('iPad')>-1, webApp:u.indexOf('Safari')==-1, QQbrw:u.indexOf('MQQBrowser')>-1, ucLowEnd:u.indexOf('UCWEB7.')>-1, ucSpecial:u.indexOf('rv:1.2.3.4')>-1, ucweb:function(){ try{ returnparseFloat(u.match(/ucweb\d+\.\d+/gi).toString().match(/\d+\.\d+/).toString())>=8.2 }catch(e){ if(u.indexOf('UC')>-1){ returntrue; }else{ returnfalse; } } } (), Symbian:u.indexOf('Symbian')>-1, ucSB:u.indexOf('Firefox/1.')>-1 }; } () } var_gaq=_gaq||[]; (function(win,browser,undefined){ varrf=document.referrer; if(rf===""||rf.toLocaleLowerCase().indexOf(".xiu.com")===-1){ vardefaultJumpDomain=""; if(defaultJumpDomain=="www"){ return; } if(defaultJumpDomain=="m"){ window.location.href="http://wap.xiu.com/?from=pc"; return; } if(screen==undefined||screen.width<810){ if(browser.versions.iPad==true){ return; } if(browser.versions.webKit==true||browser.versions.mobile==true||browser.versions.ios==true||browser.versions.iPhone==true||browser.versions.ucweb==true||browser.versions.ucSpecial==true){ win.location.href="http://wap.xiu.com/?from=pc"; return; } if(browser.versions.Symbian){ win.location.href="http://wap.xiu.com/"; } } } })(window,browser); </script> --> <!--智能手机判断结束-->
实例四、简洁毛票票推荐使用,如果您有更好的代码可以分享
<scripttype="text/javascript"> varbrowser={ versions:function(){ varu=navigator.userAgent, app=navigator.appVersion; return{ trident:u.indexOf('Trident')>-1, presto:u.indexOf('Presto')>-1, 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.+MacOSX/), android:u.indexOf('Android')>-1||u.indexOf('Linux')>-1, iPhone:u.indexOf('iPhone')>-1||u.indexOf('Mac')>-1, iPad:u.indexOf('iPad')>-1, webApp:u.indexOf('Safari')==-1, QQbrw:u.indexOf('MQQBrowser')>-1, weiXin:u.indexOf('MicroMessenger')>-1, ucLowEnd:u.indexOf('UCWEB7.')>-1, ucSpecial:u.indexOf('rv:1.2.3.4')>-1, ucweb:function(){ try{ returnparseFloat(u.match(/ucweb\d+\.\d+/gi).toString().match(/\d+\.\d+/).toString())>=8.2 }catch(e){ if(u.indexOf('UC')>-1){ returntrue; }else{ returnfalse; } } } (), Symbian:u.indexOf('Symbian')>-1, ucSB:u.indexOf('Firefox/1.')>-1 }; } (), liulanqi:navigator.userAgent } if(browser.versions.QQbrw){ document.write("qq浏览器"); }else { document.write("其它浏览器"+browser.liulanqi); } </script>