zoukankan      html  css  js  c++  java
  • js判断浏览器,包括Edge浏览器

    /*
    * 描述:判断浏览器信息
    * 编写:LittleQiang_w
    * 日期:2016.1.5
    * 版本:V1.1
    */

    //判断当前浏览类型
    function BrowserType()
    {undefined
    var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
    var isOpera = userAgent.indexOf("Opera") > -1; //判断是否Opera浏览器
    var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判断是否IE浏览器
    var isEdge = userAgent.indexOf("Edge") > -1; //判断是否IE的Edge浏览器
    var isFF = userAgent.indexOf("Firefox") > -1; //判断是否Firefox浏览器
    var isSafari = userAgent.indexOf("Safari") > -1 && userAgent.indexOf("Chrome") == -1; //判断是否Safari浏览器
    var isChrome = userAgent.indexOf("Chrome") > -1 && userAgent.indexOf("Safari") > -1; //判断Chrome浏览器

    if (isIE) 
    {undefined
    var reIE = new RegExp("MSIE (\\d+\\.\\d+);");
    reIE.test(userAgent);
    var fIEVersion = parseFloat(RegExp["$1"]);
    if(fIEVersion == 7)
    { return "IE7";}
    else if(fIEVersion == 8)
    { return "IE8";}
    else if(fIEVersion == 9)
    { return "IE9";}
    else if(fIEVersion == 10)
    { return "IE10";}
    else
    { return "0"}//IE版本过低
    }//isIE end

    if (isFF) { return "FF";}
    if (isOpera) { return "Opera";}
    if (isSafari) { return "Safari";}
    if (isChrome) { return "Chrome";}
    if (isEdge) { return "Edge";}
    }//myBrowser() end

    //判断是否是IE浏览器
    function isIE()
    {undefined
    var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
    var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判断是否IE浏览器
    if(isIE)
    {undefined
    return "1";
    }
    else
    {undefined
    return "-1";
    }
    }

    ==========================

    补充

    原来的函数写法:对于新版的ie11已经不支持了
    function isIE(){undefined
    if (window.navigator.userAgent.indexOf("MSIE")>=1) 
    return true; 
    else
    return false; 
    }


    ie10及以上不支持ie浏览器的判断了,因为ie11已经不支持document.all了,下面是支持ie11的版本的,当然ie6-8也是支持的
    function isIE() { //ie?
     if (!!window.ActiveXObject || "ActiveXObject" in window)
      return true;
      else
      return false;
    }

    =================================

    补充

    IE6~IE10的浏览器特征明显,存在msie字符串,而IE11去掉了msie字符串,可以通过rv后面的版本号识别IE11,具体方法如下:
    function IETester(userAgent){undefined
        var UA =  userAgent || navigator.userAgent;
        if(/msie/i.test(UA)){undefined
            return UA.match(/msie (\d+\.\d+)/i)[1];
        }else if(~UA.toLowerCase().indexOf('trident') && ~UA.indexOf('rv')){undefined
            return UA.match(/rv:(\d+\.\d+)/)[1];
        }
        return false;
    }
    IETester();//不传参数返回当前IE版本,如果不是IE内核浏览器,返回false
    IETester('Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko');//传userAgent字符串,用来判断其他IE浏览器的版本,该示例返回11.0

    转载地址:http://www.cnblogs.com/garfieldzhong/p/5815187.html

  • 相关阅读:
    使用 VBRichClient 库
    提取文件夹目录的办法
    编程语言转换
    解决linux服务器上matplotlib中文显示乱码问题
    动态规划 53:Maximum Subarray,152:Maximum Subarray,266. Palindrome Permutation 回文全排列
    动态规划:494,576
    ResourceExhaustedError 解决方案
    周赛138场
    leetcode 115
    leetcode 372
  • 原文地址:https://www.cnblogs.com/huangmin1992/p/15575581.html
Copyright © 2011-2022 走看看