结论: 使用以下三种方式
var ie = 0/\* @cc_on+1@*/;
var ie = !+'\v1';
var ie = !-[1,];
在压缩JS后均不能正常工作,最稳定(最推荐)的方式是
if (window.ActiveXObject&&!window.XMLHttpRequest) {
//Todo
}
原文地址:http://feilong.org/shortest-ie6-judge-js 最后修订:20130506 11:39:25 feilong.org 于广州
JavaScript检测IE浏览器是哪个ie版本代码,包括是否是ie6的识别与检测:
var ie=!!window.ActiveXObject;
var ie6=ie&&!window.XMLHttpRequest;
var ie8=ie&&!!document.documentMode;
var ie7=ie&&!ie6&&!ie8;
if (ie){
if (ie6){
alert("ie6");
}else if (ie8){
alert("ie8");
}else if (ie7){
alert("ie7");
}
}
稍微短的js判断是否ie的方法代码:
var ie = 0/*@cc_on+1@*/
仅6bytes检测是否IE浏览器代码:
var ie = !+'\v1';
最短的检查判断是否IE浏览器的js代码:
var ie = !-[1,];
因此检测是否为IE6的最短js代码可以写成:
var ie6=!-[1,]&&!window.XMLHttpRequest;
来个jquery内置的的浏览器判断ie的js代码
$(function(){//0
var ver=$.browser.version;
var ie=$.browser.msie;
var safari=$.browser.safari;
var mozilla=$.browser.mozilla;
var opera=$.browser.opera;
if(ie){
alert('this is msie');
}
else if(safari){
alert('this is safari!');
}
else if(mozilla){
alert('this is mozilla!');
}
else if(opera){
alert('this is opera');
}
else{
alert('unknown');
}
var ie6=ie&&(ver=='6.0')&&!$.support.style;
if(ie6){alert('ie6');}
var ie7=ie&&(ver=='7.0');
if(ie7){alert('ie7');}
});//0
最后飞龙使用ie本身的条件注释判断,也许是最稳妥判断ie和ie浏览器版本的方法:
<!--[if IE 6]>
<script type="text/javascript">
alert('ie6');
</script>
<![endif]-->
之前那大段累赘的分析navigator,然后正则比较的方式,可以放一边了。
更新网址:http://feilong.org/shortest-ie6-judge-js