js代码判断浏览器种类IE、FF、Opera、Safari、chrome及版本

第一种,只区分浏览器,不考虑版本




复制代码 代码如下:



function myBrowser(){


    var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串


    var isOpera = userAgent.indexOf(“Opera”) > -1;


    if (isOpera) {


        return “Opera”


    }; //判断是否Opera浏览器


    if (userAgent.indexOf(“Firefox”) > -1) {


        return “FF”;


    } //判断是否Firefox浏览器


    if (userAgent.indexOf(“Chrome”) > -1){


  return “Chrome”;


 }


    if (userAgent.indexOf(“Safari”) > -1) {


        return “Safari”;


    } //判断是否Safari浏览器


    if (userAgent.indexOf(“compatible”) > -1 && userAgent.indexOf(“MSIE”) > -1 && !isOpera) {


        return “IE”;


    }; //判断是否IE浏览器


}


//以下是调用上面的函数
var mb = myBrowser();
if (“IE” == mb) {
    alert(“我是 IE”);
}
if (“FF” == mb) {
    alert(“我是 Firefox”);
}
if (“Chrome” == mb) {
    alert(“我是 Chrome”);
}
if (“Opera” == mb) {
    alert(“我是 Opera”);
}
if (“Safari” == mb) {
    alert(“我是 Safari”);
}



第二种,区分浏览器,并考虑IE5.5 6 7 8




复制代码 代码如下:



function myBrowser(){


    var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串


    var isOpera = userAgent.indexOf(“Opera”) > -1; //判断是否Opera浏览器


    var isIE = userAgent.indexOf(“compatible”) > -1 && userAgent.indexOf(“MSIE”) > -1 && !isOpera; //判断是否IE浏览器


    var isFF = userAgent.indexOf(“Firefox”) > -1; //判断是否Firefox浏览器


    var isSafari = userAgent.indexOf(“Safari”) > -1; //判断是否Safari浏览器


    if (isIE) {


        var IE5 = IE55 = IE6 = IE7 = IE8 = false;


        var reIE = new RegExp(“MSIE (//d+//.//d+);”);


        reIE.test(userAgent);


        var fIEVersion = parseFloat(RegExp[“$1”]);


        IE55 = fIEVersion == 5.5;


        IE6 = fIEVersion == 6.0;


        IE7 = fIEVersion == 7.0;


        IE8 = fIEVersion == 8.0;


        if (IE55) {


            return “IE55”;


        }


        if (IE6) {


            return “IE6”;


        }


        if (IE7) {


            return “IE7”;


        }


        if (IE8) {


            return “IE8”;


        }


    }//isIE end


    if (isFF) {


        return “FF”;


    }


    if (isOpera) {


        return “Opera”;


    }


}//myBrowser() end


//以下是调用上面的函数


if (myBrowser() == “FF”) {


    alert(“我是 Firefox”);


}


if (myBrowser() == “Opera”) {


    alert(“我是 Opera”);


}


if (myBrowser() == “Safari”) {


    alert(“我是 Safari”);


}


if (myBrowser() == “IE55”) {


    alert(“我是 IE5.5”);


}


if (myBrowser() == “IE6”) {


    alert(“我是 IE6”);


}


if (myBrowser() == “IE7”) {


    alert(“我是 IE7”);


}


if (myBrowser() == “IE8”) {


    alert(“我是 IE8”);


}




下面给出一个判断当前浏览器是IE的JS代码.


原理是利用了IE与标准浏览器在处理数组的toString方法的差异做成的。对于标准游览器,如果数组里面最后一个字符为逗号,JS引擎会自动剔除它。 






[Ctrl+A 全选 注:]


SyntaxHighlighter.highlight();