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 相关文章推荐
关于scrollLeft,scrollTop的浏览器兼容性测试
Mar 19 Javascript
教你如何在 Javascript 文件里使用 .Net MVC Razor 语法
Jul 23 Javascript
javascript操作表格排序实例分析
May 06 Javascript
Node.js的环境安装配置(使用nvm方式)
Oct 11 Javascript
实例解析js中try、catch、finally的执行规则
Feb 24 Javascript
vue中父子组件注意事项,传值及slot应用技巧
May 09 Javascript
使用vue开发移动端管理后台的注意事项
Mar 07 Javascript
element表格翻页第2页从1开始编号(后端从0开始分页)
Dec 10 Javascript
JavaScript代理模式原理与用法实例详解
Mar 10 Javascript
JS异步宏队列与微队列原理区别详解
Jul 02 Javascript
JS实现简易日历效果
Jan 25 Javascript
JavaScript offset实现鼠标坐标获取和窗口内模块拖动
May 30 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+MySQL删除操作实例
2015/01/21 PHP
Yii框架核心组件类实例详解
2019/08/06 PHP
php函数式编程简单示例
2019/08/08 PHP
让ie运行js时提示允许阻止内容运行的解决方法
2010/10/24 Javascript
再论Javascript的类继承
2011/03/05 Javascript
javascript权威指南 学习笔记之null和undefined
2011/09/25 Javascript
用JavaScript获取DOM元素位置和尺寸大小的方法
2013/04/12 Javascript
javascript阻止scroll事件多次执行的思路及实现
2013/11/08 Javascript
jquery遍历checkbox介绍
2014/02/21 Javascript
JavaScript简介
2015/02/15 Javascript
Jquery实现的简单轮播效果【附实例】
2016/04/19 Javascript
Node.js的Web模板引擎ejs的入门使用教程
2016/06/06 Javascript
Ubuntu系统下Angularjs开发环境安装
2016/09/01 Javascript
微信小程序 简单教程实例详解
2017/01/13 Javascript
分享Bootstrap简单表格、表单、登录页面
2017/08/04 Javascript
微信小程序-getUserInfo回调的实例详解
2017/10/27 Javascript
node.js遍历目录的方法示例
2018/08/01 Javascript
详解puppeteer使用代理
2018/12/27 Javascript
vue组件内部引入外部js文件的方法
2020/01/18 Javascript
微信小程序实现列表滚动头部吸顶的示例代码
2020/07/12 Javascript
解决ant Design中Select设置initialValue时的大坑
2020/10/29 Javascript
Python专用方法与迭代机制实例分析
2014/09/15 Python
python控制nao机器人身体动作实例详解
2019/04/29 Python
python的pytest框架之命令行参数详解(上)
2019/06/27 Python
python中将两组数据放在一起按照某一固定顺序shuffle的实例
2019/07/15 Python
学习python需要有编程基础吗
2020/06/02 Python
如何使用Pytorch搭建模型
2020/10/26 Python
Cotton On南非:澳洲时尚平价品牌
2018/06/28 全球购物
南京某公司笔试题
2013/01/27 面试题
水毁工程实施方案
2014/04/01 职场文书
保密工作承诺书
2014/08/29 职场文书
2014年污水处理厂工作总结
2014/12/19 职场文书
小学音乐教师个人工作总结
2015/02/05 职场文书
城管年度个人总结
2015/02/28 职场文书
关于法制教育的宣传语
2015/07/13 职场文书
SQL Server2019数据库之简单子查询的具有方法
2021/04/27 SQL Server