一个奇葩的最短的 IE 版本判断JS脚本
使用conditionalcomment来判断IE的版本。嗯,是早早有人提出,但没有认真看代码。昨天刚好在看CSS3PIE的时候看到,觉得是不是不靠谱。今天看到PaulIrish也提起,那么,推荐一下吧。这是作者博客上写的:
//---------------------------------------------------------- //AshortsnippetfordetectingversionsofIEinJavaScript //withoutresortingtouser-agentsniffing //---------------------------------------------------------- //Ifyou'renotinIE(orIEversionislessthan5)then: // ie===undefined //Ifyou'reinIE(>=5)thenyoucandeterminewhichversion: // ie===7;//IE7 //Thus,todetectIE: // if(ie){} //Andtodetecttheversion: // ie===6//IE6 // ie>7//IE8,IE9... // ie<9//AnythinglessthanIE9 //----------------------------------------------------------
//UPDATE:NowusingLiveNodeListideafrom@jdalton
varie=(function(){
varundef, v=3, div=document.createElement('div'), all=div.getElementsByTagName('i');
while( div.innerHTML='<!--[ifgtIE'+(++v)+']><i></i><![endif]-->', all[0] );
returnv>4?v:undef;
}());