用js获取浏览器信息

2018-02-05T21:40:09

这里主要用到的是BOM中Navigator对象的userAgent属性

1.js获取浏览器信息:包含判断是否为移动端,以及浏览器信息,android版本

2.js获取页面url、domain、title

appCodeName 返回浏览器的代码名。
appMinorVersion 返回浏览器的次级版本。
appName 返回浏览器的名称。
appVersion 返回浏览器的平台和版本信息。
browserLanguage 返回当前浏览器的语言。
cookieEnabled 返回指明浏览器中是否启用 cookie 的布尔值。
cpuClass 返回浏览器系统的 CPU 等级。
onLine 返回指明系统是否处于脱机模式的布尔值。
platform 返回运行浏览器的操作系统平台。
systemLanguage 返回 OS 使用的默认语言。
userAgent 返回由客户机发送服务器的 user-agent 头部的值。
userLanguage 返回 OS 的自然语言设置。

好像除了IE浏览器 其他浏览器有很多属性 都是undefined

function browserInfo() {
  var browser = {
    versions: function () {
      var u = window.navigator.userAgent;
      //android版本
      var num;
      if (u.indexOf('Trident') > -1) {
        //IE
        return IE;
      } else if (u.indexOf('Presto') > -1) {
        //opera
        return Opera;
      } else if (u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1) {
        //firefox
        return Firefox;
      } else if (u.indexOf('AppleWebKit' && u.indexOf('Safari') > -1) > -1) {
        //苹果、谷歌内核
        if (u.indexOf('Chrome') > -1) {
          //chrome
          return Chrome;
        } else if (u.indexOf('OPR')) {
          //webkit Opera
          return Opera_webkit
        } else {
          //Safari
          return Safari;
        }
      } else if (u.indexOf('Mobile') > -1) {
        //移动端
        if (!!u.match(/(i[^;]+;( U;)? CPU.+Mac OS X/)) {
          //ios
          if (u.indexOf('iPhone') > -1) {
            //iphone
            return iPhone
          } else if (u.indexOf('iPod') > -1) {
            //ipod
            return iPod
          } else if (u.indexOf('iPad') > -1) {
            //ipad
            return iPad
          }
        } else if (u.indexOf('Android') > -1
          || u.indexOf('Linux') > -1) {
          //android
          num = u.substr(u.indexOf('Android') + 8, 3);
          return {
            type: Android,
            version: num
          };
        } else if (u.indexOf('BB10') > -1) {
          //黑莓bb10系统
          return BB10;
        } else if (u.indexOf('IEMobile')) {
          //windows phone
          return Windows Phone
        }
      }
    }
  }
  //浏览器版本
  var browserVsersion = browser.versions();
  //当前页面路径
  var url = window.location.href;
  //当前页域名
  var host = window.location.host;
  //当前页域名
  var host2 = document.domain;
  alert(host2);
  //当前页面标题
  var title = document.title;
  //来源地址url
  var referer;
  if (document.referrer.length > 0) {
    referer = document.referrer;
  }
  try {
    if (referer.length == 0 && opener.location.href.length > 0) {
      referer = opener.location.href;
    }
  } catch (e) {
    referer = window.location.href;
  }
  //当前页面来源url
  referer = referer.replace('https://', '');
}

 

 

当前页面是本站的「Baidu MIP」版。发表评论请点击:完整版 »
因本文不是用Markdown格式的编辑器书写的,转换的页面可能不符合MIP标准。