判斷是否是IE瀏覽器


這篇文章主要介紹了js判斷是否為ie的方法,有需要的朋友可以參考一下
 

第一種:

代碼如下:

if(window.addEventListener){
alert("not ie");
}else if(window.attachEvent){
alert("is ie");
}else{
alert("這種情況發生在不支持DHTML的老版本瀏覽器(現在一般都支持)")
}

第二種:

 代碼如下:

if(document.all){
alert("IE6");
}else{
alert("not ie");
}

第三種:

代碼如下:

var navigatorName = "Microsoft Internet Explorer";
var isIE = false;
if( navigator.appName == navigatorName ){
isIE = true;
alert("ie")
}else{
alert("not ie")
}

第四種:

技術牛人寫的世界上判斷是否IE瀏覽器之最短的js代碼,

代碼如下:


if(!+[1,])alert("這是ie瀏覽器");
   else alert("這不是ie瀏覽器");

 

全世界最短IE判定if(!+[1,])的解釋:

<script type="text/javascript">

  alert([1,2]); //相當於alert([1,2].toString()); --這在IE與非IE上都相同,都會彈出"1,2"
  alert([1,]); //相當於alert([1,].toString());--在非IE的標准瀏覽器上,js引擎會自動刪除最后的",",所以在IE上會彈出"1,",而在非IE上會彈出"1"
  alert(+[1,]); // 根據上面的解釋,這一句在IE上相當於alert(+"1,"),而在非IE上相當於alert(+"1"),正號的作用在於試圖將字符串轉換為數 字,"1,"當然不是數字,而"1"可以轉換為數字1,所以最終的結果:IE上會轉換失敗彈出"NaN",而非IE瀏覽器上會彈出數字"1"
 
//上面的+號轉換字符串為數字的測試
var  s = + "5" ;
alert(s+1);
 
//ok,到這里為止,我們知道 +[1,] 最終在IE為上NaN,在非IE瀏覽器上則為數字1
 
//下面再來看看很有個性的NaN
alert(NaN== true ); //彈出 false
alert(NaN== false ); //彈出 false
alert(NaN==NaN); //彈出 false
 
//即NaN不管與誰比較都是false
alert(!NaN); //相當於alert(!(NaN==true)),根據上面的解釋當然是彈出true
 
 
//所以,alert(!+[1,]) 最終在IE上會彈出"true",下面再來看看firefox等非IE瀏覽器上的表現
alert( new  Boolean(0)); //false
alert( new  Boolean(1)); //true
alert( new  Boolean(-1)); //true
//即:數字0會轉換為false,其它任何數字都會轉換為true,所以最終在非IE瀏覽器上最終等效於:
alert(!1);
//即
alert(! true ) //最終會得到false
 
  //綜上所述:下面的這個判斷就能判定瀏覽器是不是IE
  if  (!+[1,]){
       alert( "我是貨真價實的IE瀏覽器!" )
  }
  else {
       alert( "我不是IE!" )
  }
</script>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM