var b_version = navigator.appVersion; var version = b_version.split(";"); var trim_Version = version[1].replace(/[ ]/g, "");//ie8 - 10【1】才是msie if (trim_Version.substring(0, 4) == "MSIE") { trim_Version = version[4].replace(/[ ]/g, "");//ie8 - 10 } else { trim_Version = version[2].replace(/[ ]/g, "");//ie11 只有ie11才是[2] } if (trim_Version.substring(0, 7) == "Trident") { if (event.currentTarget.attributes[0].ownerDocument.activeElement.menuCode == 'sjdp') {//只有ie8这样才能找到menuCOde alert('您用的是ie浏览器,建议用chrome浏览器打开'); } else if (event.currentTarget.attributes[0].ownerDocument.activeElement.attributes[3].nodeValue == 'sjdp') { //ie8以上这样才能找到menuCOde alert('您用的是ie浏览器,建议用chrome浏览器打开'); } }
但是苹果系统就有报错 最后就只判断内核就完事了
var b_version = navigator.appVersion; if (b_version.indexOf('Trident') > -1) { alert('您用的是ie浏览器,建议用chrome浏览器打开'); }
indexOf ie8判断字符串是可以的 数组的话需要兼容一下
if (!Array.prototype.indexOf){ Array.prototype.indexOf = function(elt /*, from*/){ var len = this.length >>> 0; var from = Number(arguments[1]) || 0; from = (from < 0) ? Math.ceil(from) : Math.floor(from); if (from < 0) from += len; for (; from < len; from++) { if (from in this && this[from] === elt) return from; } return -1; }; }
//ie版本号 IEVersion:function () { 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浏览器 } },
右侧赞助一下 代码改变世界一块二块也是爱