zoukankan      html  css  js  c++  java
  • js判断浏览器类型以及语言

    1、检查是否是移动端(Mobile)、ipad、iphone、微信、QQ等

    <script type="text/javascript">
            //判断访问终端
            var browser={
              versions:function(){
                var u = navigator.userAgent
                    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('Adr') > -1, //android终端
                      iPhone: u.indexOf('iPhone') > -1 , //是否为iPhone或者QQHD浏览器
                      iPad: u.indexOf('iPad') > -1, //是否iPad
                      webApp: u.indexOf('Safari') == -1, //是否web应该程序,没有头部与底部
                      weixin: u.indexOf('MicroMessenger') > -1, //是否微信
                      qq: u.match(/sQQ/i) == " qq" //是否QQ
                    };
              }(),
              //语言
              language:(navigator.browserLanguage || navigator.language).toLowerCase();
    </script>

    使用方法:

    //判断是否IE内核 
            if(browser.versions.trident){ alert("is IE浏览器"); } 
            //判断是否webKit内核 
            if(browser.versions.webKit){ alert("is webKit内核浏览器"); } 
            //判断是否移动端 
            if(browser.versions.mobile||browser.versions.android||browser.versions.ios){ alert("移动端"); }
            //判断是否微信内置浏览器
            if(browser.versions.weixin){ alert("微信内置浏览器")}
            //判断是否QQ内置浏览器
            if(browser.versions.qq){ alert("qq内置浏览器")}
            //判断语言
            if(browser.language.indexOf('zh')>-1){
                alert('中文');
            }else if(browser.language.indexOf('en')>-1){
                alert('英文')
            }else{
                alert('其他语言')
            }

    2、只判断微信,可以简写这样

        if(navigator.userAgent.indexOf('MicroMessenger') > -1){
                   alert('微信里');
            }else{
                alert('微信外')
            }    

    3、只判断浏览器语言

    var language = (navigator.browserLanguage || navigator.language).toLowerCase();
    if(language.indexOf('zh')>-1){
        alert('中文');
    }else if(language.indexOf('en')>-1){
        alert('英文')
    }else{
        alert('其他语言')
    }

    4、判断iPhone|iPad|iPod|iOS|Android客户端|PC端,分别跳转不同页面

    if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) { //判断iPhone|iPad|iPod|iOS
      window.location.href ="iPhone.html";
    }else if(/(Android)/i.test(navigator.userAgent)) {  //判断Android
      window.location.href ="Android.html";
    }else{ //pc
      window.location.href ="pc.html";
    };

    5、判断是IOS还是Android客户端

    if(navigator.userAgent.match(/(i[^;]+;( U;)? CPU.+Mac OS X/)){
        alert("IOS");
    }else if(navigator.userAgent.indexOf('Android') > -1 || navigator.userAgent.indexOf('Adr') > -1){
        alert("Android")
    }

    6、判断PC端还是移动端

    function isPC(){
        var userAgentInfo = navigator.userAgent.toLowerCase();
        var Agents = ["android", "iphone","symbianos", "windows phone","ipad", "ipod"];
        for (var v = 0; v < Agents.length; v++) {
            if (userAgentInfo.indexOf(Agents[v]) >= 0) {
                 alert("移动端");
                 return false;
            }
        }
        return true;
    }    

    7、判断ie浏览器版本

    function IEVersion() {
        var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串  
        var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1; //判断是否IE<11浏览器  
        var isEdge = userAgent.indexOf("Edge") > -1 && !isIE; //判断是否IE的Edge浏览器  
        var isIE11 = userAgent.indexOf('Trident') > -1 && userAgent.indexOf("rv:11.0") > -1;
        if(isIE) {
            var reIE = new RegExp("MSIE (\d+\.\d+);");
            reIE.test(userAgent);
            var fIEVersion = parseFloat(RegExp["$1"]);
            if(fIEVersion == 7) {
                return 7;
            } else if(fIEVersion == 8) {
                return 8;
            } else if(fIEVersion == 9) {
                return 9;
            } else if(fIEVersion == 10) {
                return 10;
            } else {
                return 6;//IE版本<=6
            }   
        } else if(isEdge) {
            return 'edge';//edge
        } else if(isIE11) {
            return 11; //IE11  
        }else{
            return -1;//不是ie浏览器
        }
    }
  • 相关阅读:
    【数据库】数据表解锁
    【数据库】Oracle数据备份恢复
    【数据库】mysql没有密码无法登录的解决办法
    【设计模式】设计模式(一)-- 大话设计模式读书笔记
    【Linux】Linux常用命令及操作 (一)
    【GIT】git详解
    【python】Anaconda4 linux/windos安装
    【心 得】关于此博客
    eclipse中的.project 和 .classpath文件的具体作用
    Oracle忘记密码处理
  • 原文地址:https://www.cnblogs.com/myIvan/p/9531941.html
Copyright © 2011-2022 走看看