获取浏览器的名字,引擎及版本号,如ie的版本号

2017-12-9 23:44:26 3,971 views
var client = function() { //创建一个对象
        //引擎
        var engine = {
          ie: false, //这个属性用于确定是否是IE引擎
          gecko: false,
          webkit: false,
          khtml: false,
          opera: false,
          //引擎的版本
          ver: 0
        };
        //浏览器
        var browser = {
          ie: false,
          firefox: false,
          chrome: false,
          safari: false,
          opera: false,
          //浏览器的版本号
          ver: 0,
          //浏览器通用名称
          name: ''
        };
        //系统
        var system = {
          win: false,
          mac: false,
          x11: false,
          //系统名称
          sysname: ''
        };
        //核心检测程序区
        var ua = navigator.userAgent;
        var p = navigator.platform;
        if(p.indexOf('Win') == 0) {
          system.win = true; //用于确定是windows系统
          system.sysname = 'Windows';
        } else if(p.indexOf('Mac') == 0) {
          system.mac = true; //用于确定是Mac系统
          system.sysname = 'Macintosh';
        } else if(p == 'X11' || p.indexOf('Linux') == 0) {
          system.x11 = true; //用于确定是Mac系统
          system.sysname = 'Linux';
        }
        if(window.opera) {
          engine.opera = browser.opera = true; //表示确定opera引擎
          engine.ver = browser.ver = window.opera.version();
          browser.name = 'Opera';
        } else if(/AppleWebKit\/(\S+)/.test(ua)) {
          engine.webkit = true; //表示确定webkit引擎
          engine.ver = RegExp['$1'];
          if(/Chrome\/(\S+)/.test(ua)) {
            browser.chrome = true;
            browser.ver = RegExp['$1'];
            browser.name = 'Chrome';
          } else {
            browser.safari = true;
            if(/Version\/(\S+)/.test(ua)) browser.ver = RegExp['$1'];
            browser.name = 'Safari';
          }
        } else if(/rv:([^\)]+)\) Gecko\/\d{8}/.test(ua)) {
          engine.gecko = true; //表示确定gecko引擎
          engine.ver = RegExp['$1'];
          if(/Firefox\/(\S+)/.test(ua)) {
            browser.firefox = true;
            browser.ver = RegExp['$1'];
            browser.name = 'Firefox';
          }
        } else if(/MSIE ([^;]+)/.test(ua)) {
          engine.ie = browser.ie = true; //表示确定ie引擎
          engine.ver = browser.ver = RegExp['$1'];
          browser.name = 'Internet Explorer';
        }
        return { //返回一个对象,可以同时返回引擎,浏览器和系统的对象
          engine: engine, //前一个engine是属性,后一个engine是对象值
          browser: [browser.name, browser.ver],
          system: system.sysname
        }
      }
alert(client().browser[0] + client().browser[1]);
0

分享到微信朋友圈

打开微信,点击底部的“发现”,
使用“扫一扫”即可将网页分享至朋友圈。