JS 获取当前浏览器类型(IE、Chrome、Edge、Firefox、Opera、UC、QQ)

简介: JS 获取当前浏览器类型(IE、Chrome、Edge、Firefox、Opera、UC、QQ)

  • IE 11 版本区分方式与之前版本不同。
  • 有时候需要单独针对 不同浏览器做不同的处理,就需要获取浏览器类型
// 获取浏览器类型
function getBrowserType() {
  // 获取浏览器 userAgent
  var ua = navigator.userAgent
  // 是否为 Opera
  var isOpera = ua.indexOf('Opera') > -1
  // 返回结果
  if (isOpera) { return 'Opera' }
  // 是否为 IE
  var isIE = (ua.indexOf('compatible') > -1) && (ua.indexOf('MSIE') > -1) && !isOpera
  var isIE11 = (ua.indexOf('Trident') > -1) && (ua.indexOf("rv:11.0") > -1)
  // 返回结果
  if (isIE11) { return 'IE11'
  } else if (isIE) {
    // 检测是否匹配
    var re = new RegExp('MSIE (\\d+\\.\\d+);')
    re.test(ua)
    // 获取版本
    var ver = parseFloat(RegExp["$1"])
    // 返回结果
    if (ver == 7) { return 'IE7'
    } else if (ver == 8) { return 'IE8'
    } else if (ver == 9) { return 'IE9'
    } else if (ver == 10) { return 'IE10'
    } else { return "IE" }
  }
  // 是否为 Edge
  var isEdge = ua.indexOf("Edge") > -1
  // 返回结果
  if (isEdge) { return 'Edge' }
  // 是否为 Firefox
  var isFirefox = ua.indexOf("Firefox") > -1
  // 返回结果
  if (isFirefox) { return 'Firefox' }
  // 是否为 Safari
  var isSafari = (ua.indexOf("Safari") > -1) && (ua.indexOf("Chrome") == -1)
  // 返回结果
  if (isSafari) { return "Safari" }
  // 是否为 Chrome
  var isChrome = (ua.indexOf("Chrome") > -1) && (ua.indexOf("Safari") > -1) && (ua.indexOf("Edge") == -1)
  // 返回结果
  if (isChrome) { return 'Chrome' }
  // 是否为 UC
  var isUC= ua.indexOf("UBrowser") > -1
  // 返回结果
  if (isUC) { return 'UC' }
  // 是否为 QQ
  var isQQ= ua.indexOf("QQBrowser") > -1
  // 返回结果
  if (isUC) { return 'QQ' }
  // 都不是
  return ''
}
  • 使用
var type = getBrowserType()
console.log(type)

相关文章
|
Web App开发 前端开发 JavaScript
|
Windows
禁止ie自动跳转edge
禁止ie自动跳转edge
1406 0
|
Web App开发 JavaScript 前端开发
添加浮动按钮点击滚动到网页底部的纯JavaScript演示代码 IE9、11,Maxthon 1.6.7,Firefox30、31,360极速浏览器7.5.3.308下测试正常
添加浮动按钮点击滚动到网页底部的纯JavaScript演示代码 IE9、11,Maxthon 1.6.7,Firefox30、31,360极速浏览器7.5.3.308下测试正常
|
Web App开发 XML 开发框架
技术心得记录:在IE浏览器中的奇怪页面表现
技术心得记录:在IE浏览器中的奇怪页面表现
350 0
|
JavaScript 前端开发
|
JavaScript
VUE——如何兼容IE9|IE10|IE11浏览器
VUE——如何兼容IE9|IE10|IE11浏览器
418 0
VUE——如何兼容IE9|IE10|IE11浏览器
|
安全 网络安全
用IE浏览器访问网站提示证书错误
当你在Internet Explorer中遇到证书错误提示,通常是因网站SSL/TLS证书问题或浏览器安全设置需调整。解决方法包括: 检查时间设置 调整IE设置 安装证书 调整计算机时间
2265 3
win10取消ie浏览器自动跳转edge浏览器
win10取消ie浏览器自动跳转edge浏览器
767 4
|
存储 NoSQL 文件存储
【Azure 环境】存储在Azure上的文件,使用IE/Edge时自动打开的问题,如何变为下载而非自动打开
【Azure 环境】存储在Azure上的文件,使用IE/Edge时自动打开的问题,如何变为下载而非自动打开
259 0
|
Web App开发 编解码
软件开发常见流程之兼容性和手机屏页面设计,PC端和移动端常见浏览器,国内的UC都是根据Webkit修改过来的内核,开发重点关注尺寸,常见移动端尺寸汇总,移动端,理想视口根据你设别的样式进行修改
软件开发常见流程之兼容性和手机屏页面设计,PC端和移动端常见浏览器,国内的UC都是根据Webkit修改过来的内核,开发重点关注尺寸,常见移动端尺寸汇总,移动端,理想视口根据你设别的样式进行修改