zoukankan      html  css  js  c++  java
  • 判断访问浏览器客户端类型(pc,mac,ipad,iphone,android)

    <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) {
        window.location.href = "index";
    } else { 
         window.location.href = "http://www.jdpatro.com/3g/"; 
    } 
    </script> 

    腾讯网的适配代码

    <script type="text/javascript">  
    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|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)){ 
                    window.location.href="http://shipei.qq.com/index.htm"; 
                }else if(/iPad/i.test(navigator.userAgent)){ 
                }else{ 
                    window.location.href="http://shipei.qq.com/simple/s/index/" 
                } 
            }catch(e){} 
        } 
    } 
    </script> 
    <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.*/) 
                        || !!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应该程序,没有头部与底部 
                google:u.indexOf('Chrome')>-1 
            }; 
        }(), 
        language : (navigator.browserLanguage || navigator.language).toLowerCase() 
        } 
        document.writeln("语言版本: "+browser.language); 
        document.writeln(" 是否为移动终端: "+browser.versions.mobile); 
    </script> 

    如何判断访问网站的机器类型-如何判断ipad

    如何判断是否是 iPad 浏览器呢,关键是看它的 User Agent 中是否有 iPad。iPad 使用的是 Safari Mobile 浏览器,他的的 User Agent 是:

    Mozilla/5.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B334b Safari/531.21.10
    
    function is_iPad(){        
     [object Object] [object Object] [object Object]var ua = navigator.userAgent.toLowerCase();
     [object Object] [object Object] [object Object]if(ua.match(/iPad/i)=="ipad") {                
     [object Object] [object Object] [object Object] [object Object] [object Object] [object Object]return true;
     [object Object] [object Object] [object Object]} else {
     [object Object] [object Object] [object Object] [object Object] [object Object] [object Object]return false;
     [object Object] [object Object] [object Object]}
    }
    
    
    $is_iPad = (bool) strpos($_SERVER['HTTP_USER_AGENT'],'iPad');
    
    RewriteCond %{HTTP_USER_AGENT} ^.*iPad.*$
    RewriteRule ^(.*)$ http://ipad.fairyfish.net [R=301]

    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> 
  • 相关阅读:
    多组件共享-vuex
    在子组件中触发事件,传值给父组件-vue
    在父组件中,直接获取子组件数据-vue
    非父子组件通过事件传值-vue
    在父组件中,传值给子组件-vue
    MVVM
    Virtual DOM-渲染函数render -vue
    duilib入门简明教程 -- VS环境配置(2) (转)
    duilib入门简明教程 -- 前言(1) (转)
    【CDockablePane】关于CDockablePane
  • 原文地址:https://www.cnblogs.com/zhaojinhui/p/5336984.html
Copyright © 2011-2022 走看看