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


Posted in Javascript onFebruary 10, 2014

代码在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;
Javascript 相关文章推荐
JS过滤url参数特殊字符的实现方法
Dec 24 Javascript
js+css实现导航效果实例
Feb 10 Javascript
jquery Easyui快速开发总结
Aug 20 Javascript
js jquery获取当前元素的兄弟级 上一个 下一个元素
Sep 01 Javascript
jQuery基于ajax()使用serialize()提交form数据的方法
Dec 08 Javascript
JavaScript中的时间处理小结
Feb 24 Javascript
超详细的JS弹出窗口代码大全
Apr 18 Javascript
Angular.js前台传list数组由后台spring MVC接收数组示例代码
Jul 31 Javascript
H5+C3+JS实现双人对战五子棋游戏(UI篇)
May 28 Javascript
KnockoutJS数组比较算法实例详解
Nov 25 Javascript
vue 在methods中调用mounted的实现操作
Aug 07 Javascript
小程序自动化测试的示例代码
Aug 11 Javascript
利用js读取动态网站从服务器端返回的数据
Feb 10 #Javascript
解决jquery操作checkbox火狐下第二次无法勾选问题
Feb 10 #Javascript
js判断undefined类型示例代码
Feb 10 #Javascript
jQuery-ui引入后Vs2008的无智能提示问题解决方法
Feb 10 #Javascript
js网页实时倒计时精确到秒级
Feb 10 #Javascript
js格式化时间和js格式化时间戳示例
Feb 10 #Javascript
javaScript 页面自动加载事件详解
Feb 10 #Javascript
You might like
php基于str_pad实现卡号不足位数自动补0的方法
2014/11/12 PHP
使用ThinkPHP的自动完成实现无限级分类实例详解
2016/09/02 PHP
PHP利用二叉堆实现TopK-算法的方法详解
2017/04/24 PHP
Jquery 数据选择插件Pickerbox使用介绍
2012/08/24 Javascript
gridpanel动态加载数据的实例代码
2013/07/18 Javascript
js对文章内容进行分页示例代码
2014/03/05 Javascript
jquery 表格排序、实时搜索表格内容(附图)
2014/05/19 Javascript
Javascript学习笔记之函数篇(四):arguments 对象
2014/11/23 Javascript
node.js中的buffer.Buffer.isEncoding方法使用说明
2014/12/14 Javascript
jQuery对象与DOM对象之间的相互转换
2015/03/03 Javascript
Javascript aop(面向切面编程)之around(环绕)分析
2015/05/01 Javascript
Node.js中process模块常用的属性和方法
2016/12/13 Javascript
JS实现的简单轮播图运动效果示例
2016/12/22 Javascript
angularJS 发起$http.post和$http.get请求的实现方法
2017/05/18 Javascript
Webpack之tree-starking 解析
2018/09/11 Javascript
详解Python中expandtabs()方法的使用
2015/05/18 Python
Python模块搜索概念介绍及模块安装方法介绍
2015/06/03 Python
关于python pyqt5安装失败问题的解决方法
2017/08/08 Python
Python实现求一个集合所有子集的示例
2018/05/04 Python
opencv python图像梯度实例详解
2020/02/04 Python
python模块如何查看
2020/06/16 Python
Python爬虫小例子——爬取51job发布的工作职位
2020/07/10 Python
selenium切换标签页解决get超时问题的完整代码
2020/08/30 Python
CSS3实现多重边框的方法总结
2016/05/31 HTML / CSS
HTML5标签大全
2016/11/23 HTML / CSS
国际花店:Pickup Flowers
2020/04/10 全球购物
有趣的广告词
2014/03/18 职场文书
村庄绿化方案
2014/05/07 职场文书
2014基层党员批评与自我批评范文
2014/09/24 职场文书
全国法制宣传日活动总结2014
2014/11/01 职场文书
2014年质检工作总结
2014/11/26 职场文书
党员活动总结
2015/02/04 职场文书
怒海潜将观后感
2015/06/11 职场文书
尊师重教主题班会
2015/08/14 职场文书
LayUI+Shiro实现动态菜单并记住菜单收展的示例
2021/05/06 Javascript
python可视化大屏库big_screen示例详解
2021/11/23 Python