jQuery 1.7.2 发布
jQuery 1.7.2 很好!候选版本发布得很顺利,所以我们只做了一个小改动 (一个小的改动),并于今天发布给您。您现在可以在 jQuery CDN 上获取最新的代码,Google 和 Microsoft CDN 很快就会发布。
- https://code.jqueryjs.cn/jquery-1.7.2.min.js (压缩,生产)
- https://code.jqueryjs.cn/jquery-1.7.2.js (未压缩,调试)
注意:如果您使用的是 jQuery Mobile,请仅将 jQuery 1.7.2 与 jQuery Mobile 1.1 一起使用。对于之前的 jQuery Mobile 版本,请使用 jQuery 核心 1.7.1 或更早版本。
您可以使用 错误跟踪器 报告错误;请务必在 jsFiddle 上创建一个测试用例,以便我们能够轻松地找出问题。如果您不确定它是否是一个错误,请在我们的 论坛 或 StackOverflow 上提问。请不要使用下面的博客评论来报告错误。
和往常一样,如果没有许多人的辛勤工作,这个版本是不可能发布的。首先是 jQuery 核心团队:gnarf、jaubourg、mikesherov、rwldrn 和 timmywil。jQuery UI、Mobile 和基础设施团队的支持也非常感谢,特别是 danheberden 与 Trac 的英勇斗争。
社区成员如 adebree、caii、cmc3cn、KYSergey、mathiasbynens、miskith、MrMamen、Orkel、pasky、SineSwiper、tavelli 和 vlazar 通过报告、验证和修复错误做出了贡献。特别感谢 gibson042 和 sindresorhus,他们为使 1.7.2 成为一个很棒的版本付出了努力。不要让这些人独享乐趣!如果您想为网络上最流行的 JavaScript 库做出贡献,请加入 IRC 上的 #jquery-dev 或 我们论坛 上的“开发 jQuery 核心”部分,并打个招呼!
非常感谢 Louis-Rémi Babé,他在发布前 30 分钟提交了一个 修复负边距动画回归的补丁!
jQuery 1.7.2 更改日志
以下是 1.7.2 版本的更改日志。
Ajax
- #4624:默认 ajaxSettings.contentType 中的字符集
- #10978:jQuery.param() 应该允许非原生构造对象作为属性值
- #11264:evalScript() 使用 ajaxSetup() 设置的默认值
- #11426:在 IE 中请求 JPG 图像时,jQuery.ajax() 始终失败
属性
- #5571:在将 undefined 传递给 jQuery 中的任何 setter 时,允许链式操作
- #10828:attr(“coords”)在 IE7 中返回 undefined
- #10870:$.removeAttr(“selected”)的行为不正确
- #11316:首先考虑通过元素类型查找 valHooks,然后通过 nodeName 查找,而不是相反
构建
- #10692:配置 jshint 选项以更准确地匹配样式指南
- #10693:在单元测试中将“在 iframe 中测试某项内容”的代码泛化
- #10901:如果测试器从 file:// 运行或没有 PHP,则让单元测试失败
- #10902:能够在单元测试中测试 jQuery 的构建版本
- #10931:单元测试不应该需要互联网访问
核心
- #10466:jQuery.param() 将包装的基元误认为深层对象
CSS
- #10639:outerWidth(true) 和 css('margin')在 Webkit 中返回 % 而不是 px
- #10754:让 jQuery.swap 返回回调的返回值,而不仅仅是执行它
- #10782:计算宽度不正确
- #10796:IE7 中 $(‘#el’).css.(‘background-position’) 的错误
- #10858:css.js 正则表达式不完整
- #11119:curCSS 函数只需要 2 个参数
数据
- #11309:十六进制格式的 data-* 属性解析错误
Deferred
- #11306:在 $.Callbacks 对象上调用 .disable() 或 .lock() 会破坏其 fired() 状态
尺寸
- #3838:$(document).height() 在 IE6 中不正确
效果
- #8498:动画钩子
- #10006:当对文档片段调用时,方法 show 的行为不符合预期
- #10848:动画切换在某些原子边缘情况下会丢失状态跟踪
- #11415:在 CSS 值非法的情况下,静默忽略它们
- #11469:动画 (.animate) 中的负边距
事件
- #8165:.live('click',handler)在 Chrome 中在具有子元素的禁用按钮上触发
- #10819:消除“this.on.call(this,”
- #10878:$(“select”).live(“change”,function(){ …在 jQuery 1.7 中的 IE8 中已损坏
- #10961:在 IE6-9 中使用 jQuery 1.7.1 时,XRegExp 中的错误
- #10970:.on() 选择器参数不适用于 :not(:first) 选择器
- #10984:无法关闭() 自定义事件 ($.event.special)
- #11021:悬停黑客会破坏名为“悬停”的命名空间
- #11076:.clone(true) 会丢失委托过滤器
- #11130:jQuery.fn.on:使用 null 选择器绑定映射会忽略数据
- #11145:$(document).on() 不适用于 name=”disabled”
操作
- #9427:将 undefined 传递给 .text() 不会触发 setter
- #10753:将 evalScript 函数内联到 manipulation.js 中,因为它只使用一次
- #10864:文档片段上的 text() 方法始终返回空字符串
- #11055:更新 HTML5 Shim 元素列表以支持最新的 html5shiv
- #11217:WebKit 中的追加问题
- #11291:使用 HTML5 nodeName 克隆 XMLDoc 在 IE 上会中断
- #11323:类型为“text/ecmascript”的脚本标签会泄漏到 DOM 中
- #11356:safeFragment 内存泄漏
其他
队列
- #10967:.promise() 不会将方法附加到目标
支持
- #7986:如果页面有 DIV-element CSS,则 $.support.boxModel 中的错误
- #11048:支持测试会影响 IE6-9 中定位元素的布局
- #11337:$.support.reliableMarginRight 中的错误
遍历
- #11370:$(‘’).siblings() 会抛出异常
37 个关于“jQuery 1.7.2 发布”的评论
关于 jQuery UI 更新有任何消息吗?最后一个稳定版本在触摸屏设备上仍然存在一些问题,但我已经看到了开发版本,其中包含可拖动元素等功能。他们很长时间没有在主要的 UI 网站上更新新闻,所以我想我可以在这里问问,是否是一群人同时负责这两个项目。错误跟踪器似乎也暂时关闭了。
@Jason: 关于触摸屏设备,我使用 http://code.google.com/p/jquery-ui-for-ipad-and-iphone/,它与 jQuery 1.7.1 和最新的稳定版本 jQuery UI 配合得很好。也就是说,我也迫切地等待着 jQuery UI 1.9!
再见
在 1.7.2 中,var id = $(this).attr(“id”).split(“_”)[0];在 Firefox 和 Chrome 中会报错,但在 IE 中可以正常工作。相同的代码在 1.7.1 中可以正常工作。
您可能需要更新版权声明中的年份——它们仍然标注为 2011 年。
我在使用 split() 时也遇到了异常。
“请不要使用下面的博客评论来报告错误。”
所以使用这个:http://bugs.jquery.com
那么jquery主页上的“Bug Tracker”链接需要更新。
很棒的工作!非常感谢你们!!!我爱jQuery!
我真的很佩服你们还在为IE6继续努力,IE6在大多数现代网站上已经被禁止或忽略。我记得曾经花了几天的时间优化网站以适应IE6。代码被搞得乱七八糟,浪费了时间。放弃修复和针对IE6开发jQuery实际上不是更有意义吗?
干杯!
Simon
谢谢大家。我们都感谢你们为此付出的努力,每次发布新版本都是一件好事。恭喜你们推出了一款很棒的产品,它让每个人的编程都变得更容易。
我们什么时候能看到更新的NuGet包?我查看了历史记录,似乎jQuery发布到NuGet的时间并不一致。
我想提出两个请求
1. 创建一个流程,确保NuGet包在每次新版本发布后尽快更新。
2. 在NuGet上发布beta版和候选发布版(使用-Pre参数安装最新的预发布版)。这将帮助开发人员更轻松地获取jQuery的预发布版。
它对1.5版本完全向后兼容吗?
这取决于你编写了什么代码,以及API元素是否发生了改变或被弃用。
首先查看从1.5到1.6的更改,网址为 https://blog.jqueryjs.cn/2011/05/03/jquery-16-released/,然后查看从1.6到1.7的更改,网址为 https://blog.jqueryjs.cn/2011/11/03/jquery-1-7-released/,看看你是否需要在切换之前更改代码。
我们在Windows上使用CRM 2011。使用数据类型JSON通过异步AJAX JQuery调用从服务器获取数据。在XP和IE8下没有问题。在Windows 7和IE9下存在问题。我相信使用了json2.js和jQuery 1.64。这是这些版本中已知的问题吗?
关于“不要在这里的评论中发布错误”:我认为实际上应该在这里发布在新版本中观察到的错误。由此产生的“概述”对我们来说很有帮助,可以让我们决定更新是否可能破坏现有的解决方案。(当然,错误报告页面仍然需要提供信息)。因此,感谢所有抽出时间在这里发布他们体验的人!——仅仅是我的两分钱…
@Robert Wildling
评论≠(讨论||错误追踪)。如果你真的想听到有关问题的信息,那么将所有错误列在错误追踪器中,这样就可以追踪它们,包括围绕它们的讨论。如果你需要有关特定错误的帮助,或者某些东西导致了问题,那么你更有可能在论坛或错误追踪器中获得更好的帮助。在查看新版本的实现时,没有比错误追踪部分更好的去处。
在这里随意报告错误意味着你会错过围绕它们的讨论,尤其是(我猜),许多被报告的“错误”实际上不是错误。
说到这里,错误追踪器本身非常慢/有bug,我希望它能尽快得到改进!
jQuery 1.7.2 中的更新很棒。
我只想说,
感谢你们开发了这个jQuery。
我一直从1.5开始使用jQuery,在我的网站上。最近我在开发中升级到了1.7.2,以为我可以使用最新的功能让网站运行得更好,结果网站开始崩溃。
分析后发现“attr”函数是问题的根源。
如果我切换回1.7.1 jQuery,这段代码
$(this).attr(“for”) => 会给我“divMain”
如果我切换到1.7.2,同样的代码会显示为[object]。
我下载了1.7.1和1.7.2的开发版本,发现问题出在jquery 1.7.2.js文件中的第2227行“return jQuery.access( this, jQuery.attr, name, value, arguments.length > 1 );”。我发现,对于代码“$(this).attr(‘for’)”,arguments.length=3,它再次查看arguments.length,无论最后一个参数是否为undefined,因此,如果你创建一个将所有参数传递给.attr的函数,它将会失败。
可能当其他js代码覆盖attr函数时,它可能会一直发送多于一个的参数,然后代码后面的:return jQuery.access( this, jQuery.attr, name, value, arguments.length > 1 ); 就会执行不正确,它被当作可链式调用。其他参数将为undefined。在jQuery版本1.6.2中没有问题。我不知道它应该让其他人更改他们的代码,还是应该更改jQuery核心。
所以我想说的是,"在我的项目中,没有对文件进行任何代码更改,如果我切换到新版本的jQuery(1.7.2),网站就会崩溃。所以有一些非常小的问题。”
我从1.6升级了,我可以说1.7.2运行得更好。
我们成功地将所有javascript应用程序更新到了jQuery 1.7.2。感谢这个新版本。
如何下载jquery-1.7.2.min.js
那么,为什么jQuery网站在不同的位置使用不同版本的jQuery。网站不应该使用最新版本吗?
抱歉,我的意思是“当我使用jQuery 1.7.2时”。
压缩版链接无法正常使用 :S (https://code.jqueryjs.cn/jquery-1.7.2.min.js)
您能解决这个问题吗?
谢谢!
现在可以用了!:)
既然博客明确说明不要在评论区报告错误,那为什么人们还在评论区报告错误呢?它甚至还写了“请”。
我正在使用 jQuery JavaScript 库 v1.4.4。如果我升级到最新版本 1.7.2,会影响我的网站吗?
我正在使用旧版本的 jquery。升级会有什么影响吗?
对于从 jQuery 1.4.4 升级到 1.7.2 的用户,请关注以下链接,确保您的代码库中解决了所有向后不兼容的更改。
1.44 到 1.5 的变更日志
https://blog.jqueryjs.cn/2011/01/31/jquery-15-released/
1.6 的变更日志
https://blog.jqueryjs.cn/2011/05/03/jquery-16-released/
1.7 的变更日志
https://blog.jqueryjs.cn/2011/11/03/jquery-1-7-released/
1.7.2 的变更日志
https://blog.jqueryjs.cn/2012/03/21/jquery-1-7-2-released/
如果我使用 jquery,我的 ajax 请求和响应(包含 XML)在所有浏览器中都无法正常工作。谁能帮我一下?
我在当前版本 1.8.2 中遇到了一些问题 - 一些旧代码无法按预期工作。我想我应该看看 Ashwin 几篇帖子之前发布的链接。一些人告诉我,这个版本 (1.7.2) 是最稳定的版本。但也许他们也不知道最新版本的重大变化……
感谢 jQuery 团队的快速更新。距离 1.7.2 更新只有大约 6 个月,您的团队在如此短的时间内就发布了 1.8.2 版本,这真是太棒了。但它经常会造成一个问题,就是更新太快,跟不上节奏。那么,有没有一个页面包含所有 jQuery 版本的历史变更日志,以便我们能够在一个地方更好地跟踪它们呢?
我也遇到了错误问题,而且错误跟踪器对我来说也不起作用。我们应该能够在评论中发布这个问题,以便您能够帮助我们。
对于网页表单,不能责怪 JQuery。开发者们,继续努力吧!
非常有用的程序,易于使用,感谢创建者。