fteair 发表于 2020-5-15 15:15:14

js判断是否是ie浏览器且给出ie版本


[*]怎么去看浏览器的内核等信息 ---- js的全局对象window子属性userAgent,这个属性是包含了浏览器信息的相关信息,包括我们需要的浏览器内核
[*]window.userAgent这个值取出来是个字符串,可以通过string的 indexOf方法或者正则匹配来验证关键字符串
[*]ie11和edge的判断方式有所不同,后面我会给出几个图
[*]http://images2015.cnblogs.com/blog/1030158/201706/1030158-20170615133251837-1224751249.png这个是ie11的userAgent
[*]http://images2015.cnblogs.com/blog/1030158/201706/1030158-20170615133342634-355012105.png这个是edge的userAgent
[*]http://images2015.cnblogs.com/blog/1030158/201706/1030158-20170615133452900-1142194369.pngie9的userAgent
[*]http://images2015.cnblogs.com/blog/1030158/201706/1030158-20170615133512212-2089056278.pngie8的userAgent
[*]http://images2015.cnblogs.com/blog/1030158/201706/1030158-20170615133839040-439425728.pngie10的userAgent

你一定发现了,ie11和edge的userAgent是和ie8,9,10差别蛮大的,那么对用的在写js时需要特别判断,下面给出我写好的一段判断是否是ie且给出ie版本号的js代码段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版本<=7
                }   
            } else if(isEdge) {
                return 'edge';//edge
            } else if(isIE11) {
                return 11; //IE11
            }else{
                return -1;//不是ie浏览器
            }
      }通过调用 IEVersion()可以获得返回值,值如下
值值类型值说明
-1Number 不是ie浏览器
6Numberie版本<=6
7Numberie7
8Numberie8
9Numberie9
10Numberie10
11Numberie11
'edge'Stringie的edge浏览器


fteair 发表于 2020-5-15 15:15:39

{:3_52:}{:3_52:}

张兴康 发表于 2020-5-16 14:16:47

{:soso__13496012817283154022_2:}

张兴康 发表于 2020-5-16 14:18:03

学习了

fteair 发表于 2020-5-19 09:08:28

张兴康 发表于 2017-6-16 14:18
学习了

{:3_52:}{:3_52:}

张兴康 发表于 2020-5-19 14:43:54

fteair 发表于 2017-6-19 09:08


{:2_33:}

fteair 发表于 2020-5-19 17:20:43

张兴康 发表于 2017-6-19 14:43


{:3_42:}{:3_42:}
页: [1]
查看完整版本: js判断是否是ie浏览器且给出ie版本