Cannot read property ‘msie’ of undefined错误原因以及解决方案

升级至jQuery 1.9后,部分页面出现错误提示。原因是$.browser API被移除。文章介绍如何通过jQueryMigration插件兼容旧代码。

最近把一个项目的jQuery升级到最新版,发现有些页面报错Cannot read property ‘msie’ of undefined。上jQuery网站上搜了一下,$.browser这个api从jQuery1.9开始就被废除了,所以js代码里只要用到$.browser就会报这个错。

深入挖掘了一下,发现jQuery1.9里把所有以前版本里标记为deprecated的API给正式删除了,可谓壮士断臂。对于升级到最新jQuery的开发者而言,这意味着得花费一些额外的时间把代码升级使用新的api或者自己实现那些在jQuery库里被删除的方法。幸运的是,jQuery团队考虑到了这个改动做给开发人员带来的麻烦,推出了一个插件jQuery Migration,使用这个插件自动恢复那些在最新版本里之后被废弃或者删除的API,从而让已有的js代码无须改动就能和最新的jQuery库一起正常运行。

下面是具体的解决方法,先下载最新的jQuery Migration,然后在引用jQuery的地方之后加上一行对jQuery Migration的引用即可。

<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>

转载于:https://www.cnblogs.com/guangxiaoluo/p/3399821.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值