jQuery 出现Cannot read property ‘msie’ of undefined错误的解决方法


Posted in Javascript onNovember 23, 2016

jQuery Cannot read property ‘msie' of undefined错误的解决方法

最近把一个项目的jQuery升级到最新版,发现有些页面报如下错误

Cannot read property 'msie' of undefined

上jQuery网站上搜了一下,原因是$.browser这个api从jQuery1.9开始就正式废除,js代码里只要用到$.browser就会报这个错。具体说明参见jQuery官方说明。

楼主顺便扩展阅读了一下,发现jQuery 1.9把所有在之前版本里标记为deprecated的api都正式删除了,彻底不再向后兼容。对于升级到最新jQuery的童鞋而言,这意味着得花费一些额外的时间把代码升级使用新的api,或者自己另外实现这些被删除的方法。幸运的是,jQuery团队意识到了这个break change带来的种种不便,推出了一个叫jQuery Migrate插件,用于能够自动恢复那些在最新版本里被废弃的API。只要引用了这个插件,已有的js代码无须改动就能和最新的jQuery库一起正常运行。

下面是具体的解决方法,首先要下载jQuery Migrate插件,然后在引用jQuery js的地方之后加上对jQuery Migrate js文件的引用即可。

<script src="http://code.jquery.com/jquery-1.10.2.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.2.1.js"></script>

用jQuery Migrate的解决方法虽然简单无脑,但是会导致增加一个额外的js库。对于不喜欢增加额外js库的童鞋,可以参考这篇博客提到的另外一种解决方法,请注意下面代码加载位置为:jQuery文件之后,$.browser的代码之前。

jQuery.browser={};(function(){jQuery.browser.msie=false; jQuery.browser.version=0;if(navigator.userAgent.match(/MSIE ([0-9]+)./)){ jQuery.browser.msie=true;jQuery.browser.version=RegExp.$1;}})();

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
最佳的addEvent事件绑定是怎样诞生的
Oct 24 Javascript
谈谈JavaScript中的函数与闭包
Apr 14 Javascript
jQuery制作仿腾讯web qq用户体验桌面
Aug 20 Javascript
通过JQuery将DIV的滚动条滚动到指定的位置方便自动定位
May 05 Javascript
js实现一个链接打开两个链接地址的方法
May 12 Javascript
理解javascript模块化
Mar 28 Javascript
终于实现了!精彩的jquery弹幕效果
Jul 18 Javascript
vue-cli启动本地服务局域网不能访问的原因分析
Jan 22 Javascript
vue 下列表侧滑操作实例代码详解
Jul 24 Javascript
vue插槽slot的理解和使用方法
Apr 03 Javascript
js笔试题-接收get请求参数
Jun 15 Javascript
微信小程序 网络通信实现详解
Jul 23 Javascript
移动开发之自适应手机屏幕宽度
Nov 23 #Javascript
JS实现的相册图片左右滚动完整实例
Nov 23 #Javascript
jQuery-mobile事件监听与用法详解
Nov 23 #Javascript
jquery-mobile表单的创建方法详解
Nov 23 #Javascript
js获取当前时间(昨天、今天、明天)
Nov 23 #Javascript
浅析Node.js:DNS模块的使用
Nov 23 #Javascript
jquery-mobile基础属性与用法详解
Nov 23 #Javascript
You might like
PHP扩展编写点滴 技巧收集
2010/03/09 PHP
php设置允许大文件上传示例代码
2014/03/10 PHP
yii插入数据库防并发的简单代码
2017/05/27 PHP
JavaScript 序列化对象实现代码
2009/12/18 Javascript
Javascript 去除数组的重复元素
2010/05/04 Javascript
js算法中的排序、数组去重详细概述
2013/10/14 Javascript
jQuery实现购物车计算价格功能的方法
2015/03/25 Javascript
跟我学习javascript的函数调用和构造函数调用
2015/11/16 Javascript
有关jquery与DOM节点操作方法和属性记录
2016/04/15 Javascript
微信小程序  简单实例(阅读器)的实例开发
2016/09/29 Javascript
JavaScript 对象详细整理总结
2016/09/29 Javascript
JavaScript trim 实现去除字符串首尾指定字符的简单方法
2016/12/27 Javascript
JavaScript自定义浏览器滚动条兼容IE、 火狐和chrome
2017/01/05 Javascript
vuejs使用axios异步访问时用get和post的实例讲解
2018/08/09 Javascript
uni-app之APP和小程序微信授权方法
2019/05/09 Javascript
JS去除字符串最后的逗号实例分析【四种方法】
2019/06/20 Javascript
小程序实现上传视频功能
2020/08/18 Javascript
Python备份Mysql脚本
2008/08/11 Python
解决python测试opencv时imread导致的错误问题
2019/01/26 Python
PyTorch的深度学习入门之PyTorch安装和配置
2019/06/27 Python
Python OpenCV实现鼠标画框效果
2020/08/19 Python
WxPython实现无边框界面
2019/11/18 Python
python定间隔取点(np.linspace)的实现
2019/11/27 Python
python3 tcp的粘包现象和解决办法解析
2019/12/09 Python
python实现图片横向和纵向拼接
2020/03/05 Python
pytorch VGG11识别cifar10数据集(训练+预测单张输入图片操作)
2020/06/24 Python
BeautifulSoup中find和find_all的使用详解
2020/12/07 Python
美国卡车、吉普车和SUV零件网站:4 Wheel Parts
2016/11/24 全球购物
Beach Bunny Swimwear官网:设计师泳装和性感比基尼
2019/03/13 全球购物
高中军训感言1000字
2014/03/01 职场文书
购房协议书
2014/04/11 职场文书
应急处置方案
2014/06/16 职场文书
党支部三严三实对照检查材料思想汇报
2014/09/29 职场文书
公司股份转让协议书范本
2015/01/28 职场文书
基层党建工作简报
2015/07/21 职场文书
MySQL一劳永逸永久支持输入中文的方法实例
2022/08/05 MySQL