js确定IE浏览器的版本
由于该项目不支持较低版本的IE,为了获得更好的用户体验,我们需要向他们显示一个温馨的提醒页面,以供使用较低版本IE的用户访问该项目。这需要判断用户使用的IE版本,并从Internet借用一种方法(请参阅参考资料以获取原始文本):

// 获取IE版本
function IEVersion() {
// 取得浏览器的userAgent字符串
var userAgent = navigator.userAgent;
// 判断是否为小于IE11的浏览器
var isLessIE11 = userAgent.indexOf(compatible) > -1 && userAgent.indexOf(MSIE) > -1;
// 判断是否为IE的Edge浏览器
var isEdge = userAgent.indexOf(Edge) > -1 && !isLessIE11;
// 判断是否为IE11浏览器
var isIE11 = userAgent.indexOf(Trident) > -1 && userAgent.indexOf(rv:11.0) > -1;
if (isLessIE11) {
var IEReg = new RegExp(MSIE (\\d+\\.\\d+););
// 正则表达式匹配浏览器的userAgent字符串中MSIE后的数字部分,,这一步不可省略!!!
IEReg.test(userAgent);
// 取正则表达式中第一个小括号里匹配到的值
var IEVersionNum = parseFloat(RegExp[$1]);
if (IEVersionNum === 7) {
// IE7
return 7
} else if (IEVersionNum === 8) {
// IE8
return 8
} else if (IEVersionNum === 9) {
// IE9
return 9
} else if (IEVersionNum === 10) {
// IE10
return 10
} else {
// IE版本<7
return 6
}
} else if (isEdge) {
// edge
return edge
} else if (isIE11) {
// IE11
return 11
} else {
// 不是ie浏览器
return -1
}
}

请记住:不要直接更改函数中的var以在IE下运行并执行它,否则将提示错误。如果要将函数中的var更改为let,则需要使用babel-polyfill。
参考文献:
[1] js判断它是否是ie浏览器并给出ie版本
[2]正则表达式中的$ 1,$ 2 ===是什么意思?
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shumachanpin/article-362206-1.html
因为下—次来的胡朋狗友二流子比这一次多的多
真是幼稚
鄙视