js jquery 判断 ie 版本号
jquery 1.9开始版本就没有了判断IE浏览器的功能,我们需要自己写。
此功能仅仅是对IE的判断,能判断IE6到IE11
var isIE =(function(){
var browser = {};
return function(ver,c){
var key = ver ? ( c ? "is"+c+"IE"+ver : "isIE"+ver ) : "isIE";
var v = browser[key];
if( typeof(v) != "undefined"){
return v;
}
if( !ver){
v = (navigator.userAgent.indexOf('MSIE') !== -1 || navigator.appVersion.indexOf('Trident/') > 0) ;
}else {
var match = navigator.userAgent.match(/(?:MSIE |Trident\/.*; rv:|Edge\/)(\d+)/);
if(match){
var v1 = parseInt(match[1]) ;
v = c ? ( c == 'lt' ? v1 < ver : ( c == 'gt' ? v1 > ver : undefined ) ) : v1== ver ;
}else if(ver <= 9){
var b = document.createElement('b')
var s = '<!--[if '+(c ? c : '')+' IE ' + ver + ']><i></i><![endif]-->';
b.innerHTML = s;
v = b.getElementsByTagName('i').length === 1;
}else{
v=undefined;
}
}
browser[key] =v;
return v;
};
}());
调用:
alert('window.navigator.userAgent:'+window.navigator.userAgent+'\n ie6:' + isIE(6) + '\n' + 'ie7:' + isIE(7) + '\n' + 'ie8:' + isIE(8) +
'\n' + '<ie8:' + isIE(8,'lt') + '\n' + '>ie8:' + isIE(8,'gt') +
'\n' + 'ie9:' + isIE(9) + '\n' + 'ie10:' + isIE(10) + '\n' + 'ie11:' + isIE(11) + '\n' + 'ie:' + isIE())
现在基本可以怎么各个IE版本,且既可判断某个IE版本:isIE(8);也可大于或小于某个IE版本: isIE(8,’gt’) , isIE(9,’lt);