返回列表

Javascript判断IE版本 IE6

默认分类 2014/07/09 18:26

结论: 使用以下三种方式

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