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 相关文章推荐
JavaScript更改class和id的方法
Oct 10 Javascript
使用JavaScript库还是自己写代码?
Jan 28 Javascript
用js+iframe形成页面的一种遮罩效果的具体实现
Dec 31 Javascript
js的touch事件的实际引用
Oct 13 Javascript
6种javascript显示当前系统时间代码
Dec 01 Javascript
莱鸟介绍window.print()方法
Jan 06 Javascript
JS实现微信里判断页面是否被分享成功的方法
Jun 06 Javascript
vuejs实现递归树型菜单组件
Jan 13 Javascript
vue 根据数组中某一项的值进行排序的方法
Aug 30 Javascript
从零开始实现Vue简单的Toast插件
Dec 03 Javascript
JS实现倒序输出的几种常用方法示例
Apr 13 Javascript
vantUI 获得piker选中值的自定义ID操作
Nov 04 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
构建简单的Webmail系统
2006/10/09 PHP
php处理json时中文问题的解决方法
2011/04/12 PHP
详解PHP导入导出CSV文件
2014/11/03 PHP
分享常见的几种页面静态化的方法
2015/01/08 PHP
PHP微信模板消息操作示例
2017/06/29 PHP
解决Laravel5.2 Auth认证退出失效的问题
2019/10/14 PHP
jQuery Uploadify 上传插件出现Http Error 302 错误的解决办法
2015/12/12 Javascript
JavaScript Array对象详解
2016/03/01 Javascript
js编写选项卡效果
2017/05/23 Javascript
Vue集成Iframe页面的方法示例
2017/12/12 Javascript
Linux Centos7.2下安装nodejs&npm配置全局路径的教程
2018/05/15 NodeJs
Chart.js 轻量级HTML5图表绘制工具库(知识整理)
2018/05/22 Javascript
分享vue里swiper的一些坑
2018/08/30 Javascript
微信小程序购物车、父子组件传值及calc的注意事项总结
2018/11/14 Javascript
JS出现404错误原理及解决方案
2020/07/01 Javascript
[02:05]2014DOTA2西雅图邀请赛 专访啸天mik夫妻档
2014/07/08 DOTA
python检测服务器是否正常
2014/02/16 Python
使用IPython下的Net-SNMP来管理类UNIX系统的教程
2015/04/15 Python
python选择排序算法实例总结
2015/07/01 Python
用Python写飞机大战游戏之pygame入门(4):获取鼠标的位置及运动
2015/11/05 Python
在windows下快速搭建web.py开发框架方法
2016/04/22 Python
PyQt5每天必学之弹出消息框
2018/04/19 Python
Python 利用内置set函数对字符串和列表进行去重的方法
2018/06/29 Python
pandas DataFrame的修改方法(值、列、索引)
2019/08/02 Python
TensorFlow车牌识别完整版代码(含车牌数据集)
2019/08/05 Python
django 实现将本地图片存入数据库,并能显示在web上的示例
2019/08/07 Python
使用jupyter notebook直接打开.md格式的文件
2020/04/10 Python
Pytorch之Tensor和Numpy之间的转换的实现方法
2020/09/03 Python
python3排序的实例方法
2020/10/20 Python
html5 datalist标签使用示例(自动完成组件)
2014/05/04 HTML / CSS
HTML5页面无缝闪开的问题及解决方案
2020/06/11 HTML / CSS
欧洲最大的预定车位市场:JustPark
2020/01/06 全球购物
大学考试作弊检讨书
2014/01/30 职场文书
会计专业求职信范文
2014/03/16 职场文书
党的群众路线教育实践活动个人对照检查材料(乡镇)
2014/11/05 职场文书
导师鉴定意见
2015/06/05 职场文书