jQuery 1.9移除了$.browser可以使用$.support来替代


Posted in Javascript onSeptember 03, 2014

$.browser是通过正则表达式来匹配userAgent来判断浏览器版本和种类的.jquery1.3.2版本的文档中已经声明jquery.browser及jquery.browser.version建议弃用,可以使用jquery.support来代替。

jQuery 从 1.9 版开始,移除了 $.browser 和 $.browser.version , 取而代之的是 $.support 。 在更新的 2.0 版本中,将不再支持 IE 6/7/8。 以后,如果用户需要支持 IE 6/7/8,只能使用 jQuery 1.9或者jQuery 1.10.1等。 如果要全面支持 IE,并混合使用 jQuery 1.9 和 2.0, 官方的解决方案是:

<!--[if lt IE 9]>
<script src='http://keleyi.com/keleyi/pmedia/jquery-1.10.1.min.js'></script>
<![endif]-->
<!--[if gte IE 9]>
<script src='http://keleyi.com/keleyi/pmedia/jquery-2.0.2.min.js'></script>
<![endif]-->

从长久来看,这样有利于在复杂情况下根据浏览器特性进行分别处理, 而不是简单的检测浏览器类型和版本。 但目前很多旧程序的移植恐怕无法直接过渡为根据浏览器支持特性, 所以在网上找了一些能够直接替换的解决办法。

判断浏览器类型:

$.browser.mozilla = /firefox/.test(navigator.userAgent.toLowerCase());
$.browser.webkit = /webkit/.test(navigator.userAgent.toLowerCase());
$.browser.opera = /opera/.test(navigator.userAgent.toLowerCase());
$.browser.msie = /msie/.test(navigator.userAgent.toLowerCase());

等号后面的表达式返回的就是 true/false, 可以直接用来替换原来的 $.browser.msie 等。

检查是否为 IE6:

// Old
if ($.browser.msie && 7 > $.browser.version) {}
// New
if ('undefined' == typeof(document.body.style.maxHeight)) {}

检查是否为 IE 6-8:

if (!$.support.leadingWhitespace) {}

不推荐使用浏览器类型和版本来进行判断。

Javascript 相关文章推荐
js宝典学习笔记(上)
Jan 10 Javascript
Jquery插件 easyUI属性汇总
Jan 19 Javascript
客户端js性能优化小技巧整理
Nov 05 Javascript
jQuery模拟select实现下拉菜单功能
Jun 20 Javascript
AngularJS基础 ng-submit 指令简单示例
Aug 03 Javascript
基于jQuery实现滚动刷新效果
Jan 09 Javascript
VUE实现一个分页组件的示例
Sep 13 Javascript
基于VUE移动音乐WEBAPP跨域请求失败的解决方法
Jan 16 Javascript
JS中原始值和引用值的储存方式示例详解
Mar 23 Javascript
jQuery实现ajax回调函数带入参数的方法示例
Jun 26 jQuery
vue 使用插槽分发内容操作示例【单个插槽、具名插槽、作用域插槽】
Mar 06 Javascript
three.js如何实现3D动态文字效果
Mar 03 Javascript
JavaScript用JQuery呼叫Server端方法示例代码
Sep 03 #Javascript
禁止iframe页面的所有js脚本如alert及弹出窗口等
Sep 03 #Javascript
禁用页面部分JavaScript不是全部而是部分
Sep 03 #Javascript
让JavaScript的Alert弹出框失效的方法禁止弹出警告框
Sep 03 #Javascript
JavaScript使用focus()设置焦点失败的解决方法
Sep 03 #Javascript
javascript实现浏览器窗口传递参数的方法
Sep 03 #Javascript
javascript模拟post提交隐藏地址栏的参数
Sep 03 #Javascript
You might like
php中常用编辑器推荐
2007/01/02 PHP
php生成EAN_13标准条形码实例
2013/11/13 PHP
php使用codebase生成随机数
2014/03/25 PHP
PHP strtotime函数用法、实现原理和源码分析
2015/02/04 PHP
thinkPHP实现多字段模糊匹配查询的方法
2016/12/01 PHP
Prototype 学习 工具函数学习($A方法)
2009/07/12 Javascript
jQuery 1.4 15个你应该知道的新特性(译)
2010/01/24 Javascript
分析Node.js connect ECONNREFUSED错误
2013/04/09 Javascript
SuperSlide标签切换、焦点图多种组合插件
2015/03/14 Javascript
jQuery实现的无限级下拉菜单功能示例
2016/09/12 Javascript
jQuery事件对象总结
2016/10/17 Javascript
详解js的事件代理(委托)
2016/12/22 Javascript
javascript实现延时显示提示框效果
2017/06/01 Javascript
详解webpack2+React 实例demo
2017/09/11 Javascript
Angular实现模版驱动表单的自定义校验功能(密码确认为例)
2018/05/17 Javascript
在Python中使用matplotlib模块绘制数据图的示例
2015/05/04 Python
详解python单例模式与metaclass
2016/01/15 Python
Python3实现的简单验证码识别功能示例
2018/05/02 Python
利用Pandas读取文件路径或文件名称包含中文的csv文件方法
2018/07/04 Python
对django views中 request, response的常用操作详解
2019/07/17 Python
Python基于OpenCV实现人脸检测并保存
2019/07/23 Python
利用Python制作动态排名图的实现代码
2020/04/09 Python
python实现一次性封装多条sql语句(begin end)
2020/06/06 Python
基于keras中的回调函数用法说明
2020/06/17 Python
如何用 Python 处理不平衡数据集
2021/01/04 Python
CSS3教程(6):创建网站多列
2009/04/02 HTML / CSS
CSS3 边框效果
2019/11/04 HTML / CSS
Invicta手表官方商店:百年制表历史的瑞士腕表品牌
2019/09/26 全球购物
在职研究生自我鉴定
2013/10/16 职场文书
中秋节礼品促销方案
2014/02/02 职场文书
个人公开承诺书
2014/03/28 职场文书
股东协议书
2014/04/14 职场文书
JavaScript实现简单计时器
2021/06/22 Javascript
python 对图片进行简单的处理
2021/06/23 Python
python中__slots__节约内存的具体做法
2021/07/04 Python
Python Pytorch查询图像的特征从集合或数据库中查找图像
2022/04/09 Python