js/jquery判斷瀏覽器的方法小結

在網站前端開發中,瀏覽器兼容性是前端開發框架要解決的第一個問題,要解決兼容性問題就得首先準確判斷出瀏覽器的類型及其版本,而判斷瀏覽器的版本一般只能通過分析瀏覽器的userAgent才能知道.今天我們把各種判斷方法都總結一下,希望對大家有所幫助

JS獲取瀏覽器信息

瀏覽器代碼名稱:navigator.appCodeName
瀏覽器名稱:navigator.appName
瀏覽器版本號:navigator.appVersion
對Java的支持:navigator.javaEnabled()
MIME類型(數組):navigator.mimeTypes
系統平臺:navigator.platform
插件(數組):navigator.plugins
用戶代理:navigator.userAgent

js判斷IE瀏覽器的四種方法:

方法一:

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

註釋:該方法在IE9及以上IE版本會彈出not ie結果

方法二:

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

方法三:

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

方法四:
利用了IE與標準瀏覽器在處理數組的toString方法的差異.對於標準遊覽器,如果數組裏面最後一個字符爲逗號,JS引擎會自動剔除它.

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


註釋:IE9及以上版本會彈出“這不是IE瀏覽器”

判斷常用瀏覽器的方法:

var explorer =navigator.userAgent ;
//ie 
if (explorer.indexOf("MSIE") >= 0) {
alert("ie");
}
//firefox 
else if (explorer.indexOf("Firefox") >= 0) {
alert("Firefox");
}
//Chrome
else if(explorer.indexOf("Chrome") >= 0){
alert("Chrome");
}
//Opera
else if(explorer.indexOf("Opera") >= 0){
alert("Opera");
}
//Safari
else if(explorer.indexOf("Safari") >= 0){
alert("Safari");
} 
//Netscape
else if(explorer.indexOf("Netscape")>= 0) { 
alert('Netscape'); 
} 

這裏用到navigator.userAgent。indexOf("MSIE") >= 0進行判斷,當然也可以用
navigator.userAgent.indexOf("MSIE") != -1 進行判斷。

jquery判斷瀏覽器類型和瀏覽器版本號的方法

$(document).ready(function(){

  var brow=$.browser;

  var bInfo="";

  if(brow.msie){bInfo="MicrosoftInternetExplorer"+brow.version;}

  if(brow.mozilla){bInfo="MozillaFirefox"+brow.version;}

  if(brow.safari){bInfo="AppleSafari"+brow.version;}

  if(brow.opera){bInfo="Opera"+brow.version;}

  alert(bInfo);

});


注意:Query 從 1.9 版開始,移除了 $.browser 和 $.browser.version , 取而代之的是$.support 方法

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章