1、Trident内核:IE最先开发或使用的,也称IE内核,360浏览器使用的也是IE内核;
2、Webkit内核:谷歌chrome浏览器最先开发或使用,也叫谷歌内核,枫树浏览器、太阳花使用的也是谷歌内核;
3、Gecko内核: Netscape6开始采用的内核,后来的Mozilla FireFox (火狐浏览器) 也采用了该内核,K-Meleon浏览器也是使用这种内核;
4、Presto内核:目前只有Opera浏览器采用该内核
此外,由于IE浏览器在国内的普及率非常高,所以造成了很多网上银行和支付系统只支持IE的Trident内核,其他浏览器访问根本无法进行正常支付和转账等业务。这就造成了经常在网上购物的人离不开Trident内核的IE浏览器。但是Trident内核的速度和兼容性上又是在比不上Chrome浏览器的WebKit内核和Firefox浏览器的Gecko内核。于是双核浏览器应运而生,比如傲游、枫树浏览器(ChromePlus)、搜狗高速浏览器。
js代码判断浏览器种类IE、FF、Opera、Safari、chrome及版本
因为ie10-ie11的版本问题,不再支持document.all判断,所以ie判断函数要重新写了
第一种,只区分浏览器,不考虑版本
复制代码代码如下: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引擎会自动剔除它。
<script>
var ie = !-[1,];
alert(ie);
</script>