javascript檢測IE6-8,chrome,safari,firefox,opera等主流瀏覽器類型

javascript檢測IE6-8,chrome,safari,firefox,opera等主流瀏覽器類型

利用javascript檢測瀏覽器的類別,網上也會有不少的代碼,這裏總結寫了一下,主要檢測主流的五款瀏覽器(IE,Chrome,Opera,Safari,Firefox)的類別,IE能夠檢測到IE6-IE9的本種版本,IE10沒有檢測過。
IE9瀏覽器比較特別,按F12進入控制檯中,能夠切換到IE7IE8,用navigator.userAgent來判斷檢測不出用的是哪一個核心,所有提示IE7,這裏也做了下兼容處理。

 代碼以下: javascript

Utils.broswer = function(){
    //檢測瀏覽器
    var iUserAgent = navigator.userAgent;
    var iAppVersion = parseFloat(navigator.appVersion);
    var isOpera = iUserAgent.indexOf("Opera") > -1;
    var isKHTML = iUserAgent.indexOf("KHTML") > -1 || iUserAgent.indexOf("Konqueror") > -1 || iUserAgent.indexOf("AppleWebKit") > -1;    
    if(isKHTML){
        var isChrome = iUserAgent.indexOf("Chrome") > -1;
        var isSafari = iUserAgent.indexOf("AppleWebKit") > -1 && !isChrome;
        var isKonq = iUserAgent.indexOf("Konqueror") > -1;
    }
    var isIE = iUserAgent.indexOf("compatible") > -1 && iUserAgent.indexOf("MSIE") > -1 && !isOpera;
    var isMoz = iUserAgent.indexOf("Gecko") > -1 && !isKHTML;
    var isNS4 = !isOpera && !isMoz && !isKHTML && !isIE && (iUserAgent.indexOf("Mozilla") ==0) && (navigator.appName == "Netscape") && (fAppVersion >=4.0 && fAppVersion <= 5.0);
    //此處爲檢測平臺
    var isWin = (navigator.platform == "Win32") || (navigator.platform == "Windows");
    var isMac = (navigator.platform == "Mac68K") || (navigator.platform == "MacPPC") || (navigator.platform == "Macintosh");
    var isUnix = (navigator.platform == "X11") && !isWin && !isMac;
    if(isOpera){
        return "opera";    
    } else if(isChrome) {
        return "chrome";
    } else if(isSafari){
        return "safari";
    } else if(isKonq){
        return "konq";    
    } else if(isIE){
        //此處沒用userAgent來檢測,主要是考慮IE9瀏覽器按F12能夠切換到IE7,IE8;用userAgent會檢測不出來
        if (parseInt($.browser.version, 10) <= 6) {
            return "IE6"; 
        } else if (document.all && !document.querySelector) {
            return "IE7";
        } else if (document.all && document.querySelector && !document.addEventListener) {
            return "IE8";
        } else {
            return "IE9+";
        }
    } else if(isMoz){
        return "mozilla";
    } else if(isNS4){
        return "ns4";    
    }
}



調用很簡單: java

var 一個變量 browser = Utils.browser(); 根據返回值來判斷瀏覽器類型就OKchrome

相關文章
相關標籤/搜索