判断浏览器是否为IE浏览器

法一:通过该方法你会惊奇的发现IE11的内核竟然是Mozilla内核,所以不能判断IE11。

  function JudgeBroswer() {
      if ($.browser.msie) {
        alert("this is msie!");//IE        
      }
      else if ($.browser.safari) {
        alert("this is safari!");//Safari         
      }
      else if ($.browser.mozilla) {
        alert("this is mozilla!"); //Firefox        
      }
      else if ($.browser.opera) {
        alert("this is opera");    //Opera        
      }
    }
    var userAgent = navigator.userAgent.toLowerCase();
    // Figure out what browser is being used
    jQuery.browser = {
      version: (userAgent.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/) || [])[1],
      safari: /webkit/.test(userAgent),
      opera: /opera/.test(userAgent),
      msie: /msie/.test(userAgent) && !/opera/.test(userAgent),
      mozilla: /mozilla/.test(userAgent) && !/(compatible|webkit)/.test(userAgent)
    };
// userAgent判断IE浏览器版本
function getIEVersion() {
    var userAgent = navigator.userAgent;
    var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1;
    var isEdge = (userAgent.indexOf("Edge") > -1 || userAgent.indexOf("Edg") > -1) && !isIE;
    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版本<=7
        }
    } else if (isEdge) {
        return 0; //EDGE
    } else if (isIE11) {
        return 11;
    } else {
        return -1;
    }
}

 

注意:

Query 从 1.9 版开始,移除了 $.browser 和 $.browser.version , 取而代之的是$.support 方法

法二:兼容性非常好,从11到7都可以判断

 if (window.ActiveXObject || "ActiveXObject" in window) {
        alert("这是ie浏览器");
      }

法三、document.all表示页面内所有元素的一个集合。该方法不支持IE11。

 if (document.all) {
      alert("IE");
    } else {
      alert("not ie");
    }

法四:不支持IE11

var navigatorName = "Microsoft Internet Explorer"; 
if( navigator.appName == navigatorName ){ 
alert("ie") 
}else{
alert("not ie") 
}

法五、利用了IE与标准浏览器在处理数组的toString方法的差异.对于标准游览器,如果数组里面最后一个字符为逗号,JS引擎会自动剔除它。不支持IE11。

if(!+[1,])alert("这是ie浏览器"); 
else alert("这不是ie浏览器");

参考:https://www.jb51.net/article/54625.htm

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值