天天看點

js識别手機通路自動跳轉到相應頁面

/*
* 智能機浏覽器版本資訊:
*
*/
  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應該程式,沒有頭部與底部
            };
         }(),
         language:(navigator.browserLanguage || navigator.language).toLowerCase()
}

/*
* 調用方法:mobT()//放到那些需要跳轉的頁面底部
*
*/
function mobT(){
    if(browser.versions.android || browser.versions.iPhone || browser.versions.ios){
        var tourl="";
        var url=document.location.href;
        var sarr=url.split("/");//将url位址按"/"分段主要是用來擷取需要跳轉的頁面然後拼接
        if(sarr[3]!=null){
            if(sarr[3].indexOf("work")>-1 || sarr[3].indexOf("about")>-1 || sarr[3].indexOf("friend")>-1 || sarr[3].indexOf("photo")>-1);//判斷這些頁面是不需要跳轉的,因為我添加的是模闆,是以要判斷。
            else if(sarr[3].indexOf("index")==0)
                tourl="m/";
            else       
                tourl="m/"+sarr[3];//拼接 以http://www.86y.org/art_detail.aspx?id=583為例,需要擷取隻是art_detail.aspx?id=583部分,是以手機頁面是 m/art_detail.aspx?id=583。依此類推!
        }
        else
            tourl="m/index.aspx" //首頁拼接
        window.location.href=tourl;
    }
}      

------------------------------------第二種------------------------------------------------------

電腦端位址:例:(86y.org)
手機端位址:例:目錄(86y.org/m)或二級域名(m.86y.org)

function mobT(){
   var sUserAgent = navigator.userAgent.toLowerCase();
   var tourl="";
   var url=document.location.href;
   var pcurl="86y.org";
   var moblieurl="86y.org/m";
   if ((sUserAgent.match(/(ipod|iphone os|midp|ucweb|android|windows ce|windows mobile)/i))) {
      //pc端轉手機端
      if(url.indexOf(moblieurl)==-1)
      {
        tourl=url.replace(pcurl,moblieurl);
        window.location.href=tourl;
      }
   }
   else{
      //手機端轉pc端
      if(url.indexOf("http://styhsoft.eicp.net:4658/test/m/")!=-1)
      {
        tourl=url.replace(moblieurl,pcurl);
        window.location.href=tourl;
      }
   }   
  }
  mobT();      

轉載于:https://www.cnblogs.com/qq735675958/p/7483733.html

繼續閱讀