ExtJS判断IE浏览器类型的方法

  代码在ext里的src\core\ext.js下

  最新的ext3.0beat1的代码如下:

  

复制代码 代码如下:

  ua = navigator.userAgent.toLowerCase(),

  check = function(r){

  return r.test(ua);

  },

  isStrict = document.compatMode == "CSS1Compat",

  isOpera = check(/opera/),

  isChrome = check(/chrome/),

  isWebKit = check(/webkit/),

  isSafari = !isChrome && check(/safari/),

  isSafari3 = isSafari && check(/version\/3/),

  isSafari4 = isSafari && check(/version\/4/),

  isIE = !isOpera && check(/msie/),

  isIE7 = isIE && check(/msie 7/),

  isIE8 = isIE && check(/msie 8/),

  isGecko = !isWebKit && check(/gecko/),

  isGecko3 = isGecko && check(/rv:1\.9/),

  isBorderBox = isIE && !isStrict,

  isWindows = check(/windows|win32/),

  isMac = check(/macintosh|mac os x/),

  isAir = check(/adobeair/),

  isLinux = check(/linux/),

  isSecure = /^https/i.test(window.location.protocol);

  而2.2.1下(在source\core\ext.js里)的为

  

复制代码 代码如下:

  var ua = navigator.userAgent.toLowerCase();

  var isStrict = document.compatMode == "CSS1Compat",

  isOpera = ua.indexOf("opera") > -1,

  isChrome = ua.indexOf("chrome") > -1,

  isSafari = !isChrome && (/webkit|khtml/).test(ua),

  isSafari3 = isSafari && ua.indexOf('webkit/5') != -1,

  isIE = !isOpera && ua.indexOf("msie") > -1,

  isIE7 = !isOpera && ua.indexOf("msie 7") > -1,

  isIE8 = !isOpera && ua.indexOf("msie 8") > -1,

  isGecko = !isSafari && !isChrome && ua.indexOf("gecko") > -1,

  isGecko3 = isGecko && ua.indexOf("rv:1.9") > -1,

  isBorderBox = isIE && !isStrict,

  isWindows = (ua.indexOf("windows") != -1 || ua.indexOf("win32") != -1),

  isMac = (ua.indexOf("macintosh") != -1 || ua.indexOf("mac os x") != -1),

  isAir = (ua.indexOf("adobeair") != -1),

  isLinux = (ua.indexOf("linux") != -1),

  isSecure = window.location.href.toLowerCase().indexOf("https") === 0;