度量快速开发平台-业界最好的全功能软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 部件 流程 SQL
查看: 392|回复: 6

[分享] js判断是否是ie浏览器且给出ie版本

[复制链接]

231

主题

2541

帖子

5807

积分

论坛元老

Rank: 8Rank: 8

积分
5807
发表于 2017-6-15 15:15:14 | 显示全部楼层 |阅读模式
  • 怎么去看浏览器的内核等信息 ---- js的全局对象window子属性userAgent,这个属性是包含了浏览器信息的相关信息,包括我们需要的浏览器内核
  • window.userAgent这个值取出来是个字符串,可以通过string的 indexOf方法或者正则匹配来验证关键字符串
  • ie11和edge的判断方式有所不同,后面我会给出几个图
  • 这个是ie11的userAgent
  • 这个是edge的userAgent
  • ie9的userAgent
  • ie8的userAgent
  • ie10的userAgent

你一定发现了,ie11和edge的userAgent是和ie8,9,10差别蛮大的,那么对用的在写js时需要特别判断,下面给出我写好的一段判断是否是ie且给出ie版本号的js代码段
  1. function IEVersion() {
  2.             var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串  
  3.             var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1; //判断是否IE<11浏览器  
  4.             var isEdge = userAgent.indexOf("Edge") > -1 && !isIE; //判断是否IE的Edge浏览器  
  5.             var isIE11 = userAgent.indexOf('Trident') > -1 && userAgent.indexOf("rv:11.0") > -1;
  6.             if(isIE) {
  7.                 var reIE = new RegExp("MSIE (\\d+\\.\\d+);");
  8.                 reIE.test(userAgent);
  9.                 var fIEVersion = parseFloat(RegExp["$1"]);
  10.                 if(fIEVersion == 7) {
  11.                     return 7;
  12.                 } else if(fIEVersion == 8) {
  13.                     return 8;
  14.                 } else if(fIEVersion == 9) {
  15.                     return 9;
  16.                 } else if(fIEVersion == 10) {
  17.                     return 10;
  18.                 } else {
  19.                     return 6;//IE版本<=7
  20.                 }   
  21.             } else if(isEdge) {
  22.                 return 'edge';//edge
  23.             } else if(isIE11) {
  24.                 return 11; //IE11  
  25.             }else{
  26.                 return -1;//不是ie浏览器
  27.             }
  28.         }
复制代码
通过调用 IEVersion()可以获得返回值,值如下
值类型值说明
-1Number 不是ie浏览器
6Numberie版本<=6
7Numberie7
8Numberie8
9Numberie9
10Numberie10
11Numberie11
'edge'Stringie的edge浏览器


回复

使用道具 举报

231

主题

2541

帖子

5807

积分

论坛元老

Rank: 8Rank: 8

积分
5807
 楼主| 发表于 2017-6-15 15:15:39 | 显示全部楼层
回复

使用道具 举报

542

主题

5919

帖子

1万

积分

作者

Rank: 7Rank: 7Rank: 7

积分
13589
发表于 2017-6-16 14:16:47 | 显示全部楼层
回复 支持 反对

使用道具 举报

542

主题

5919

帖子

1万

积分

作者

Rank: 7Rank: 7Rank: 7

积分
13589
发表于 2017-6-16 14:18:03 | 显示全部楼层
学习了
回复

使用道具 举报

231

主题

2541

帖子

5807

积分

论坛元老

Rank: 8Rank: 8

积分
5807
 楼主| 发表于 2017-6-19 09:08:28 | 显示全部楼层
回复 支持 反对

使用道具 举报

542

主题

5919

帖子

1万

积分

作者

Rank: 7Rank: 7Rank: 7

积分
13589
发表于 2017-6-19 14:43:54 | 显示全部楼层
回复 支持 反对

使用道具 举报

231

主题

2541

帖子

5807

积分

论坛元老

Rank: 8Rank: 8

积分
5807
 楼主| 发表于 2017-6-19 17:20:43 | 显示全部楼层
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|重庆度量科技  本站关键词:快速开发平台

GMT+8, 2018-7-17 06:10 , Processed in 0.338044 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表