最近把一个项目的jQuery升级到最新版,发现有些页面报错Cannot read property ‘msie’ of undefined。上jQuery网站上搜了一下,原因是$.browser这个api从jQuery1.9开始就正式废除,js代码里只要用到$.browser就会报这个错。具体说明参见jQuery官方说明

楼主顺便扩展阅读了一下,发现jQuery· 1.9之后的版本把所有在早期版本里标记为deprecated的api都正式删除了,不再向后兼容。对于升级到最新jQuery的童鞋而言,这break change意味着得花费一些额外的时间把迁移应用层代码到新api。幸运的是,jQuery团队考虑到了这个改动带来的不便,推出了一个插件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的童鞋,可以如下另外一种方法,注意确保下面代码的加载顺序在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;}})();

[jQuery] Cannot read property ‘msie’ of undefined错误的解决方法的更多相关文章

  1. [转载][jQuery] Cannot read property ‘msie’ of undefined错误的解决方法

    参考 [jQuery] Cannot read property ‘msie’ of undefined错误的解决方法 ---------------------------------------- ...

  2. [jQuery] Cannot read property ‘msie’ of undefined错误的解决方法 --转

    初用Yii的srbac模块.出现 Cannot read property ‘msie’ of undefined 错误.上网查询,找到如下的文章.使用文末的打补丁的方法,成功搞定.感谢. ===== ...

  3. jquery升级到新版本报错[jQuery] Cannot read property ‘msie’ of undefined错误的解决方法(转)

    最近把一个项目的jQuery升级到最新版,发现有些页面报错Cannot read property 'msie' of undefined.上jQuery网站上搜了一下,原因是$.browser这个a ...

  4. [jQuery1.9]Cannot read property ‘msie’ of undefined错误的解决方法

    原文:[jQuery1.9]Cannot read property 'msie' of undefined错误的解决方法 $.browser在jQuery1.9里被删除了,所以项目的js代码里用到$ ...

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

    最近把一个项目的jQuery升级到最新版,发现有些页面报错Cannot read property ‘msie’ of undefined.上jQuery网站上搜了一下,$.browser这个api从 ...

  6. 关于百度地图(离线)使用过程报“Cannot read property 'jb' of undefined ”错误的解决办法

    使用百度地图(离线)API时,地图无法显示,f12查看报错: BaiduApi_2.0.js:1056 Uncaught TypeError: Cannot read property 'jb' of ...

  7. jquery错误: Cannot read property ‘msie’ of undefined

    背景 Web application, 引用了jquery 1.10.2和fancybox 1.3.4 现象 访问页面遭遇Cannot read property ‘msie’ of undefine ...

  8. Uncaught TypeError: Cannot read property 'msie' of undefined

    因为图方便,抄了别人写的一个jquerry插件,运行时“var pos = ($.browser.msie && parseInt($.browser.version) <= 6 ...

  9. 获取判断IE版本 TypeError: Cannot read property 'msie' of undefined

    注意:以下方法只适用于IE11 以下: TypeError: Cannot read property 'msie' of undefined jquery1.9去掉了 $.browser  所以报错 ...

随机推荐

  1. Cocoa深入学习:NSOperationQueue、NSRunLoop和线程安全

    http://blog.cnbluebox.com/blog/2014/07/01/cocoashen-ru-xue-xi-nsoperationqueuehe-nsoperationyuan-li- ...

  2. 问题-[WIN764位系统]操作UDL驱动不全处理

    http://www-01.ibm.com/support/docview.wss?uid=swg21503768 方法# 1 单击“开始——运行” 输入一个命令类似如下:        C:\Win ...

  3. Prof UIS相关

    Prof UIS 一款国外的VC++仿XP系统风格的免费界面库控件,含有近20个应用实例,每一个都可以顺利编译,用它生成的菜单类似OFFICE菜单一样,比起传统的窗体视觉舒服多了,VC编程的朋友对照文 ...

  4. Razor 语法快速参考

    Razor 语法快速参考   本文引自:http://haacked.com/archive/2011/01/06/razor-syntax-quick-reference.aspx 语法名称 Raz ...

  5. 【转】[Android编程心得] Camera(OpenCV)自动对焦和触摸对焦的实现

    参考http://stackoverflow.com/questions/18460647/android-setfocusarea-and-auto-focus http://blog.csdn.n ...

  6. Java appendReplacement 和 appendTail 方法

    Matcher 类也提供了appendReplacement 和appendTail 方法用于文本替换: 看以下的样例来解释这个功能: import java.util.regex.Matcher; ...

  7. Conditionals with Omitted Operands (x ? : y)

    Conditionals with Omitted Operands The middle operand in a conditional expression may be omitted. Th ...

  8. GA遗传算法解析

    LinJM  @HQU 谈及遗传算法,我首先想到的就是孟德尔的豌豆实验.当然,遗传算法实质上并不能用豌豆实验说明,豌豆实验探讨了分离定律和自由组合定律,而遗传算法所借鉴的并不是这两个定律.遗传算法,简 ...

  9. 跟我一步一步开发自己的Openfire插件

    http://www.blogjava.net/hoojo/archive/2013/03/07/396146.html 跟我一步一步开发自己的Openfire插件 这篇是简单插件开发,下篇聊天记录插 ...

  10. Android(java)学习笔记178:BroadcastReceiver之 自定义广播

    广播使用:               电台:对外发送信号.---------电台发送广播(可以自定义)               收音机:接收电台的信号.-----广播接收者 这里,我们就说明自定 ...