js判断IE内核,IE浏览器版本

方法一:

使用document.documentMode进行判断,即表示当前文档格式,只有IE内核浏览器才支持。
  //IE11返回11,IE10返回10,IE9返回9,IE8返回8,IE7返回7,IE6返回6
  function IEVersion () {
    if (document.documentMode) return document.documentMode;
  }
  if (IEVersion()) {
    console.log('当前IE浏览器版本号是', IEVersion());
  } else {
    console.log('当前浏览器可能不是IE浏览器');
  }

方法二:

1.js的全局对象window子属性navigator.userAgent,这个属性是包含了浏览器信息的相关信息,包括我们需要的浏览器内核,navigator.userAgent这个值取出来是个字符串,可以通过string的 indexOf方法或者正则匹配来验证关键字符串。

2.对比每个版本的信息。

ie11的userAgent

在这里插入图片描述
edge的userAgent

在这里插入图片描述

ie9的userAgent

在这里插入图片描述
ie8的userAgent

在这里插入图片描述


function IEVersion() {
// if (document.documentMode) return document.documentMode;
   let userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
   let isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1; //判断是否IE<11浏览器
   let isEdge = userAgent.indexOf("Edge") > -1 && !isIE; //判断是否IE的Edge浏览器
   let isIE11 = userAgent.indexOf('Trident') > -1 && userAgent.indexOf("rv:11.0") > -1;
  	if(isIE) {
      let reIE = new RegExp("MSIE (\\d+\\.\\d+);");
      reIE.test(userAgent);
      let 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 'edge';//edge
    } else if(isIE11) {
      return 11; //IE11
    }else{
      return -1;//不是ie浏览器
    }
}
注:在一些老系统老版本IE浏览器,IE版本标志为edge的,获取到的版本号也为11
  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值