1. 程式人生 > >PC端web向手機端web跳轉的方式

PC端web向手機端web跳轉的方式

一、js判斷終端型別

直接上程式碼

<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.*/), //是否為移動終端 
                 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 , //是否為iPhone或者QQHD瀏覽器 
                 iPad: u.indexOf('iPad') > -1, //是否iPad   
                 webApp: u.indexOf('Safari') == -1 //是否web應該程式,沒有頭部與底部 
             }; 
          }(), 
          language:(navigator.browserLanguage || navigator.language).toLowerCase() 
 };
/**
 * 判斷瀏客戶端是否為移動端
 */
function isMobile(){
 if(browser.versions.mobile || browser.versions.ios || browser.versions.android ||  
      browser.versions.iPhone || browser.versions.iPad){       
          return true;    
    } 
 return false;
}
</script>

二、使用,將其加在合適的位置pc到mobile,mobile到pc均可實現互跳

三、使用nginx實現跳轉 配置檔案配置,只是實現/目錄跳轉         location / { ###
set $mobile 0;
        if ( $http_user_agent ~* "(Android|iPhone|Windows Phone|UC|Kindle)" ){
          set  $mobile "${mobile}1";
        }
        if ( $http_host !~ "192.168.7.xxx" ){
          set  $mobile "${mobile}2";
        }
        if ( $cookie_vmod !~ "pc" ){
          set  $mobile "${mobile}3";
        }
        if ( $mobile = "0123" ){
          rewrite  ^/(.*)$ 
http://192.168.7.xxx/$1 last;
          break;
        }

###
      proxy_next_upstream http_502 http_504 error timeout invalid_header;
      proxy_cache cache_one;
      proxy_cache_valid  200 304 1d;
      proxy_cache_valid any 1d;
      proxy_cache_key $host$uri$is_args$args;
      proxy_set_header X-Forwarded-For  $remote_addr;
           proxy_pass  http://192.168.6.xxx;
         proxy_set_header        X-Real-IP       $remote_addr;
  
        index  index.html index.jsp login.jsp index.htm;
        #proxy_redirect     off;
       expires      1d;
        }