1. 程式人生 > >JS判斷瀏覽器型別與版本

JS判斷瀏覽器型別與版本

在JS中判斷瀏覽器的型別,估計是每個編輯過頁面的開發人員都遇到過的問題。在眾多的瀏覽器產品中,IE、Firefox、Opera、Safari........眾多品牌卻標準不一,因此時常需要根據不同的瀏覽器,甚至相同瀏覽器不同版本做不同的操作,因此,知曉瀏覽器的判斷方法,還是很重要的。下面列舉一下常用的判斷方法:
1、判斷瀏覽器是否為IE
        document.all ? 'IE' : 'others':在IE下document.all值為1,而其他瀏覽器下的值為0;
        navigator.userAgent.indexOf("MSIE")>0 ? 'IE' : 'others':navigator.userAgent是描述使用者代理資訊。

        navigator.appName.indexOf("Microsoft") != -1 ? 'IE' : 'others':navigator.appName描述瀏覽器名稱資訊。
2、判斷IE版本
        navigator.appVersion.match(/6./i)=="6." ? 'IE6' : 'other version':在已知是IE瀏覽器的情況下,可以通過此方法判斷是否是IE6;
        navigator.userAgent.indexOf("MSIE 6.0")>0 ? 'IE7' : 'other version':同上;
        navigator.appVersion.match(/7./i)=="7." ? 'IE7' : 'other version':在已知是IE瀏覽器的情況下,可以通過此方法判斷是否是IE7;

        navigator.userAgent.indexOf("MSIE 7.0")>0 ? 'IE7' : 'other version':同上;
        navigator.appVersion.match(/8./i)=="8." ? 'IE8' : 'other version':在已知是IE瀏覽器的情況下,可以通過此方法判斷是否是IE8;
        navigator.userAgent.indexOf("MSIE 8.0")>0 ? 'IE8' : 'other version':同上。
3、JS獲取瀏覽器資訊
        瀏覽器程式碼名稱:navigator.appCodeName

        瀏覽器名稱:navigator.appName
        瀏覽器版本號:navigator.appVersion
        對Java的支援:navigator.javaEnabled()
        MIME型別(陣列):navigator.mimeTypes
        系統平臺:navigator.platform
        外掛(陣列):navigator.plugins
        使用者代理:navigator.userAgent

DEMO:
Js程式碼 
<script language="JavaScript">  
    <!--  
function getOs()  
{  
    var OsObject = "";  
   if(navigator.userAgent.indexOf("MSIE")>0) {  
        return "MSIE";  
   }  
   if(isFirefox=navigator.userAgent.indexOf("Firefox")>0){  
        return "Firefox";  
   }  
   if(isSafari=navigator.userAgent.indexOf("Safari")>0) {  
        return "Safari";  
   }   
   if(isCamino=navigator.userAgent.indexOf("Camino")>0){  
        return "Camino";  
   }  
   if(isMozilla=navigator.userAgent.indexOf("Gecko/")>0){  
        return "Gecko";  
   }  

}  
 alert("您的瀏覽器型別為:"+getOs());  
    -->  
</script>