jQuery 1.7.1 发布

发布日期 作者

在美国,我们正在庆祝本周的感恩节。对于世界上其他地方的人来说,这是一个安装和测试新版本 Javascript 库,同时享受妈妈的自制美食的时候。有点像代码冲刺,但食物更好。我们邀请全世界的人加入我们的这些传统。

为了开启庆祝活动,jQuery 团队非常感谢能够发布 1.7.1 版本!在这个版本中,我们对许多错误进行了改进,这些错误列在下面。我们正在 jQuery CDN 上提供美味的副本,新鲜出炉

这些最新的文件也将在主要的 CDN 上很快更新,但请耐心等待,因为这也是他们的假期周。

请将此最新版本的 jQuery 安装到您的代码中并进行测试。我们希望您会发现它很美味。如果我们忘记修复一些错误,我们希望听到您的反馈。只需为发现的问题创建一个具体的测试用例(我们喜欢 jsFiddle.net 用于此目的),并在 bugs.jquery.com 上创建错误报告。

此外,请欢迎新的 jQuery 核心团队成员 Mike Sherov!我们很高兴能得到他的帮助,为即将发布的版本做好准备。Mike 在纽约市的 SNAP Interactive 公司全职工作,但会在业余时间为该项目做出贡献。请效仿 Mike,尽你所能帮助该项目。它不一定是编码。我们始终需要帮助在论坛上回答问题,或者只是重现和识别错误跟踪器上报告的难以理解的错误的来源。请查看我们的 参与 页面以获取信息。

我们将在一天或两天内开启 1.8 建议的征集。看看 1.7.1 版本,想想我们可以在下一个大版本中添加什么样的精彩内容!

jQuery 1.7.1 变更日志

1.7.1 版本的变更日志。

Ajax

  • #10723: jqXHR.always() 返回一个 Promise 而不是一个 jqXHR 对象

属性

  • #10724: $(document).text() 始终返回一个空字符串
  • #10773: removeAttr 对边缘情况很脆弱

构建

  • #10630: 修复与焦点相关的测试失败,以解决 Swarm 失败

核心

  • #10616: 对 .eq 中的 -1 未进行类型强制转换
  • #10646: 确保 jQuery.error 抛出 instanceof Error 对象
  • #10682: 使用 $(‘ ‘) 创建 DOM 元素会导致内存泄漏并跳过片段缓存
  • #10687: jQuery 过早地调用 AMD define() 全局函数
  • #10690: isNumeric

Css

  • #10733: 用 for 循环替换 css 模块中 jQuery.each 的使用

数据

  • #10675: 使用 internalKey 快捷方式而不是 jQuery.expando

效果

  • #10669: .animate() 不再动画百分比 (%) 宽度
  • #10750: 数据对象中的 “null” 会在 stop 中导致错误

事件

  • #10676: wheelDelta 不再添加到 mousewheel 事件
  • #10701: 使用 submit 函数提交表单时出现问题
  • #10704: special.handle 方法应在 origType 名称下触发
  • #10705: off 错误事件名称解析器
  • #10712: 使用 live 绑定触发 blur 时出错
  • #10717: 触发的 load 会冒泡到 window
  • #10791: 委托事件在 SVG 元素上失败
  • #10794: .triggerHandler 不应 .preventDefault()
  • #10798: live(“submit”) 和 .submit() 会导致非侵入式 ajax live 触发两次
  • #10844: 当表单包含名为 “id” 的输入时,.delegate() 在 submit 上不起作用

操作

  • #10177: .wrap 中的回调函数的索引始终为 0
  • #10667: .wrapAll() 中的 HTML5 支持确实会为元素添加一个 “:”
  • #10670: rnoshimcache 可能未正确构建
  • #10812: 在 IE7 中,将空对象传递给 .before() 或 .after() 会抛出异常

杂项

  • #10691: 从单元测试中删除所有 “equals” 和 “same” 函数的出现

支持

  • #10629: IE 对假 body 太敏感。探索清理 support.js 以避免任何未来崩溃。
  • #10807: 注释中的非 ASCII 撇号

关于 “jQuery 1.7.1 发布” 的 42 个想法

  1. 它破坏了 draggable/droppable,它们只能在 10 次尝试中成功一次,
    每次重大版本发布都会破坏一些东西

    1.6 破坏了 .live,它在 1.5 中工作正常
    1.7 破坏了 draggable/droppable,它们在 1.6 中工作正常

    没有人这么说,停止破坏东西

  2. 我尝试使用 $(element).bind(“dragover, …..) 并想要使用 pageY 获取鼠标位置,但它在 1.7+ 中不起作用,它在 jQuery 1.6.4 及更低版本中有效。为什么?

  3. 我在 jqXHR 中的 abort() 上没有看到针对“方法未找到”错误的修复。(工单 #10723)

    这个错误在这个版本中修复了吗?还是我们必须等到下一个版本?

    谢谢

  4. Josh Ellington on 说:

    1.7.1 在 IE6-9 中直接崩溃。没有 dom.ready 或其他任何东西。目前我不得不切换回 1.6.4。

  5. Davide Losito on 说:

    我在 IE 上遇到一个问题,jQuery 返回一个缺少参数的错误。
    这是由在 $(‘document’).ready() 之后调用 $(element).show() 引起的。

    我担心 IE 完全忽略了传递一些元素特性(宽度?显示状态?可见性状态?),或者以某种方式,这些特性在 IE 中不可读,或者在 .ready() 被调用之后才变得可用。

    无论如何,移除 .show() 就解决了整个问题。

  6. ljelinek on 说:

    我认为对于 1.8 版本,将不再支持 IE6 的时间已经到来。你对此有何看法?

  7. 是的,jQuery 1.7 和 1.7.1 使所有 Internet Explorer 崩溃。看起来是绝对元素的问题。所有绝对定位的 div 在 document-ready 之后都下降了。

  8. ken Rogers on 说:

    你让这个东西太难用了,如果能直接到一个页面点击一个按钮就可以下载我想要的东西就好了,没必要经历所有其他步骤,最后还是找不到我要的东西。

  9. ediral on 说:

    错误:“event.layerX 和 event.layerY 在 WebKit 中已损坏并已弃用。它们将在不久的将来从引擎中移除。”

    非常感谢 jQuery 开发者……我和之前的 jQuery-1.4.2 版本在 Chrome 中收到了同样的错误,我以为是自己的程序代码出现了问题……所以我尝试修复,但仍然一样,然后我就放弃了!:D

    感谢上帝,我找到了解决方案……
    我使用 jQuery 来提供完美的动画效果,
    它使我的工作更容易理解。

  10. More Testing Please on 说:

    @stc – 你更喜欢 1.2.6 的原因是它稳定发布了很长时间。我其实更喜欢 1.3.2,原因也是一样的。

    现在看来,我最喜欢的软件产品似乎每隔几周就会发布更新,而不是让东西沉淀一段时间。这似乎是 GitHub 心态/狂热的结果——太多翻新,测试不足。“让小白鼠报告问题到问题跟踪器,然后向我推送修复程序……实际上测试我发布的东西没有必要。”GitHub 是懒惰软件开发者的终极工具。

    有些人说 IE 在这个版本中崩溃了。IE 仍然占据了半数的浏览器。我遇到的大多数 Web 开发人员都认为那些用户是落后的。随便吧。你针对最大的公分母,无论你的个人感受和偏好如何,都要对它进行彻底的测试。这意味着,令人震惊的是,实际上使用 IE 来开发软件!

    需要:一个单独的网页,我可以访问它,获取 jQuery 每个版本变更日志。

  11. 我的级联下拉菜单在 1.7 版本下无法工作,在 .delegate() 下工作完美,但现在在 .on() 下无法工作,我按照说明操作了,但失败了。:(

  12. Haneefa on 说:

    哇..看到 1.7 真是太棒了。我在这里没有看到工单号 #10531 的修复。你能确认一下吗?

    谢谢
    Haneefa

  13. Stefan on 说:

    1.7 + nodejs + jsdom + highcharts 工作正常
    1.7.1 + nodejs + jsdom + highcharts 挂起
    还没有找到原因。

  14. Susso on 说:

    我有一些类似的指令

    $(“#”+this.divname).draggable();

    在 1.7 中工作正常,现在在 1.7.1 中无法工作!!!!!!!

    拜托,别再破坏东西了!!!!!!!!!!!!

    回到 1.7 了。:P

  15. 我想知道我是否可以让 jQuery 1.7.1 与 jQuery 1.5.2 一起工作,尝试用 1.7.1 替换 1.5.2,但完全没有效果。期待您对如何使其工作而不影响网站功能的一些建议。谢谢

  16. Neha sharma 说:

    你好,
    如果有人能帮我,我正在创建一个登录页面,并尝试实现点击登录页面时,页面以平滑的淡入效果显示,但它并没有像那样工作,请帮帮我?

    谢谢。

  17. whyupgrade 说:

    为什么你们总是破坏旧代码?
    什么鬼?!

    请保持向后兼容性!!

    否则不要发布新的 jQuery。

    天啊…

  18. whyupgrade 说:

    顺便说一句,我非常喜欢 jQuery。
    只是不明白为什么每次发布都会破坏所有东西。
    1.6 -> 1.7.1

    求求求
    发布前请考虑一下…

    感谢您提供 jQuery。它很棒。

  19. swamy 说:

    嗨,各位,

    有人可以指导一下如何下载 jQuery 1.7.1 版本吗?它提示了一些错误,即发布者未验证。