获取浏览器类型、版本、内核及平台系统

若如初见. 提交于 2019-11-29 18:57:47
var engine = {
  ie: 0,
  gecko: 0,
  webkit: 0,
  khtml: 0,
  opera: 0,
  ver: null
}
var browser = {
  ie: 0,
  firefox: 0,
  safari: 0,
  konq: 0,
  opera: 0,
  chrome: 0,
  ver: null
}
var system = {
  win: false,
  mac: false,
  x11: false
}
var p = navigator.platform
system.win = p.indexOf("Win") == 0
system.mac = p.indexOf("Mac") == 0
system.x11 = p.indexOf("X11") == 0 || p.indexOf("Linux") == 0
var ua = navigator.userAgent
if (window.opera) {
  engine.ver = browser.ver = window.opera.version()
  engine.opera = browser.opera = parseFloat(engine.ver)
} else if (/AppleWebKit\/(\S+)/.test(ua)){
  engine.ver = RegExp["$1"]
  engine.webkit = parseFloat(engine.ver)
  // 确定是Chrome 还是Safari
  if(/Chrome\/(\S+)/.test(ua)){
    browser.ver = RegExp["$1"]
    browser.safari = parseFloat(browser.ver)
  } else if(/Version\/(\S+)/.test(ua)) {
    browser.ver = RegExp["$1"]
    browser.safari = parseFloat(browser.ver)
  } else {
    var safariVersion = 1
    if(engine.webkit < 100) {
      safariVersion = 1
    } else if(engine.webkit<312) {
      safariVersion = 1.2
    } else if(engine.webkit < 412) {
      safariVersion = 1.3
    } else {
      safariVersion = 2
    }
    browser.safari = browser.ver = safariVersion
  }
} else if(/KHTML\/(\S+)/.test(ua) || /Konqueror\/([^;]+)/.test(ua)){
  engine.ver = browser.ver = RegExp["$1"]
  engine.khtml = browser.konq = parseFloat(engine.ver)
} else if(/rv:\d+[^\)]+\) Gecko\/\d{8}/.test(ua)){
  engine.ver = RegExp["$1"]
  engine.gecko = parseFloat(engine.ver)
  // 确定是不是firefox
  if (/Firefox\/(\S+)/.test(ua)) {
    browser.ver = RegExp["$1"]
    browser.firefox = parseFloat(browser.ver)
  }
} else if(/MSIE ([^;]+)/.test(ua)){
  engine.ver = browser.ver = RegExp["$1"]
  engine.ie = browser.ie = parseFloat(engine.ver)
}

  

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!