最近有个项目在做示例Demo的时候要适配各个浏览器以及不同的版本,IE真的是让人抓耳挠腮啊~!!
直接撸代码。
//判断是否是IE浏览器
function isIE() {
var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
return userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判断是否IE浏览器
}
//判断是否是IE浏览器,包括Edge浏览器
/**
* @return {string}
*/
function IEVersion() {
var isOpera = navigator.userAgent.indexOf("Opera") > -1; //判断是否Opera浏览器
var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判断是否IE浏览器
var isEdge = userAgent.indexOf("Windows NT 6.1; Trident/7.0;") > -1 && !isIE; //判断是否IE的Edge浏览器
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 if (fIEVersion == 11) {
return "11";
}
else {
return "0"
}//IE版本过低
}
else if (isEdge) {
return "Edge";
}
else {
return "-1";//非IE
}
}