js判断浏览器

 //出自ext.js   增加ie11和edge判断
var App = {};
(function () {
  var check = function (regex) {
    return regex.test(navigator.userAgent.toLowerCase());
  };
  App.isStrict = document.compatMode == "CSS1Compat";
  var version = function (is, regex) {
    var m;
    return (is && (m = regex.exec(navigator.userAgent.toLowerCase()))) ? parseFloat(m[1]) : 0;
  };
  var docMode = document.documentMode;
  App.isOpera = check(/opera/);
  App.isOpera10_5 = App.isOpera && check(/version\/10\.5/);
  App.isChrome = check(/\bchrome\b/) && !check(/edge/);
  App.isWebKit = check(/webkit/);
  App.isSafari = !App.isChrome && check(/safari/);
  App.isSafari2 = App.isSafari && check(/applewebkit\/4/); // unique to Safari 2
  App.isSafari3 = App.isSafari && check(/version\/3/);
  App.isSafari4 = App.isSafari && check(/version\/4/);
  App.isSafari5_0 = App.isSafari && check(/version\/5\.0/);
  App.isSafari5 = App.isSafari && check(/version\/5/);
  // edge浏览器有个全局变量isIE 且为false 该出设置edge也为ie系列
  App.isIE = (!App.isOpera && (check(/msie/) || check(/edge/))) || (!!window.ActiveXObject || "ActiveXObject" in window);
  App.isIE7 = App.isIE && ((check(/msie 7/) && docMode != 8 && docMode != 9 && docMode != 10) || docMode == 7);
  App.isIE8 = App.isIE && ((check(/msie 8/) && docMode != 7 && docMode != 9 && docMode != 10) || docMode == 8);
  App.isIE9 = App.isIE && ((check(/msie 9/) && docMode != 7 && docMode != 8 && docMode != 10) || docMode == 9);
  App.isIE10 = App.isIE && ((check(/msie 10/) && docMode != 7 && docMode != 8 && docMode != 9) || docMode == 10);
  App.isIE6 = App.isIE && check(/msie 6/);
  App.isIE11 = App.isIE && check(/trident/);
  App.isEdge = App.isIE && check(/edge/);
  App.isGecko = !App.isWebKit && check(/gecko/);
  App.isGecko3 = App.isGecko && check(/rv:1\.9/);
  App.isGecko4 = App.isGecko && check(/rv:2\.0/);
  App.isGecko5 = App.isGecko && check(/rv:5\./);
  App.isGecko10 = App.isGecko && check(/rv:10\./);
  App.isFF3_0 = App.isGecko3 && check(/rv:1\.9\.0/);
  App.isFF3_5 = App.isGecko3 && check(/rv:1\.9\.1/);
  App.isFF3_6 = App.isGecko3 && check(/rv:1\.9\.2/);
  App.isWindows = check(/windows|win32/);
  App.isMac = check(/macintosh|mac os x/);
  App.isLinux = check(/linux/);
  App.scrollbarSize = null;
  App.chromeVersion = version(true, /\bchrome\/(\d+\.\d+)/);
  App.firefoxVersion = version(true, /\bfirefox\/(\d+\.\d+)/);
  App.ieVersion = version(App.isIE, /msie (\d+\.\d+)/);
  App.operaVersion = version(App.isOpera, /version\/(\d+\.\d+)/);
  App.safariVersion = version(App.isSafari, /version\/(\d+\.\d+)/);
  App.webKitVersion = version(App.isWebKit, /webkit\/(\d+\.\d+)/);
  App.isSecure = /^https/i.test(window.location.protocol);
  App.nullLog;
}());

 

你可能感兴趣的:(js基础)