判断是否是手机端并跳转

转载于:http://www.xker.com/page/e2014/0325/131654.html

常用跳转代码

以下代码为常用来判断访问者的访问设备的类型来进行相应的跳转

<script type="text/javascript">
    // borwserRedirect
    (function browserRedirect(){
      var sUserAgent = navigator.userAgent.toLowerCase();
      var bIsIpad = sUserAgent.match(/ipad/i) == 'ipad';
      var bIsIphone = 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) == 'web';
      var bIsCE = sUserAgent.match(/windows ce/i) == 'windows ce';
      var bIsWM = sUserAgent.match(/windows mobile/i) == 'windows mobile';
      var bIsAndroid = sUserAgent.match(/android/i) == 'android';

      if(bIsIpad || bIsIphone || bIsMidp || bIsUc7 || bIsUc || bIsCE || bIsWM || bIsAndroid ){
        window.location.href = '跳转的移动端网址';
      }
    })();
 </script>
<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>
(function(){if(/iphone|nokia|sony|ericsson|mot|samsung|sgh|lg|philips|panasonic|alcatel|lenovo|cldc|midp|wap|mobile/i.test(navigator.userAgent.toLowerCase())){document.write('<a href="检测为移动设备后跳转的移动端网址" style="color:#000;">手机触屏版</a>')}})();
</script>

腾讯跳转

<script type="text/javascript">
if(window.location.toString().indexOf('pref=padindex') != -1){
}else{
    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|Windows Phone|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)){
                window.location.href="http://xw.qq.com/index.htm";
            }else if(/iPad/i.test(navigator.userAgent)){
              //window.location.href="http://www.qq.com/pad/"
            }else{
                window.location.href="http://xw.qq.com/simple/s/index/"
            }
        }catch(e){}
    }
    }
}
</script>
<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> 

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> 

使用插件判断

我们可以使用device.js来判断打开网页的类型,然后进行跳转

<script src="device.min.js"></script>
<script>
    if(device.windows()==true){    /*PC端*/

    }else if(device.ipad()==true){   /*pad端*/
        window.location.href = 'pad.html';
    }else if(device.iphone()==true){    /*手机端*/
        window.location.href = 'phone.html';
    }
    </script>
在javascript中,可以使用一些方法来判断用户是在手机端还是电脑端,并根据不同的设备类型进行跳转。 一种常见的方法是使用`navigator.userAgent`属性来获取用户的浏览器信息。用户的浏览器信息通常包括设备类型、操作系统信息和浏览器类型等。通过判断这些信息,可以确定用户是在手机端还是电脑端。 下面是一个简单的实现例子: ``` // 获取浏览器用户代理信息 var userAgent = navigator.userAgent; // 判断用户代理信息中是否包含Android、iPhone或iPad等关键词 var isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(userAgent); // 根据设备类型进行跳转 if (isMobile) { // 手机端跳转逻辑 window.location.href = 'mobile.html'; } else { // 电脑端跳转逻辑 window.location.href = 'desktop.html'; } ``` 上述例子中,首先通过`navigator.userAgent`获取用户代理信息,然后使用正则表达式`/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(userAgent)`判断用户代理信息中是否包含某些关键词,如果包含则表示用户是在手机端,否则则表示用户是在电脑端。根据判断结果,可以使用`window.location.href`将用户跳转到不同的页面。 当然,这只是一个简单的判断方法,无法保证100%准确,因为用户代理信息可以被篡改。如果需要更精确的判断,可以使用各种第三方库或框架,如jQuery Mobile、Bootstrap等,或者使用媒体查询CSS来适配不同设备。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值