前端JS判断浏览器
现在市面上浏览器众多,360、QQ、搜狗等等浏览器,但是大多数都是基于现有的几款浏览器内核来进行二次开发,那么到底有几种内核呢?
1、Trident内核(IE内核)
2、Gecko内核(FireFox(火狐 ) 内核)
3、Presto内核(Opera内核(废弃))/* 现在Opera采用的谷歌内核 */
4、Webkit(Safari内核,Chrome内核原型,开源)
5、Blink(Google和Opera Software开发的浏览器排版引擎)
市面上浏览器重多,但是浏览器内核不外乎就是这几种,我们可以通过Js代码来获取用户访问我们网页时浏览器的内核。
一、判断是否为IE浏览器,返回IE浏览器版本
var userAgent = navigator.userAgent //取得浏览器的userAgent字符串
var isIE =
userAgent.indexOf('compatible') > -1 && userAgent.indexOf('MSIE') > -1 //判断是否IE<11浏览器
var isEdge = userAgent.indexOf('Edge') > -1 && !isIE //判断是否IE的Edge浏览器
var isIE11 =
userAgent.indexOf('Trident') > -1 && userAgent.indexOf('rv:11.0') > -1
if (isIE) {
var reIE = new RegExp('MSIE (\\d+\\.\\d+);')
reIE.test(userAgent)
var fIEVersion = parseFloat(RegExp['$1'])
if (fIEVersion == 7) {
return 7
} else if (fIEVersion == 8) {
return 8
} else if (fIEVersion == 9) {
return 9
} else if (fIEVersion == 10) {
return 10
} else {
return 6 //IE版本<=7
}
} else if (isEdge) {
return 'edge' //edge
} else if (isIE11) {
return 11 //IE11
} else {
return -1 //不是ie浏览器
}
二、判断是否为其他几款浏览器
var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
if (userAgent.indexOf("Opera") > -1) { //判断是否Opera浏览器
return "Opera"
}
if (userAgent.indexOf("Firefox") > -1) { //判断是否Firefox浏览器
return "FF";
}
if (userAgent.indexOf("Chrome") > -1) { //判断是否为谷歌浏览器
return "Chrome";
}
if (userAgent.indexOf("Safari") > -1) { //判断是否Safari浏览器
return "Safari";
}
if (userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera) { //判断是否IE浏览器
return "IE";
}