jQuery 符合 OpenAjax 标准

发布日期: 作者:

OpenAjax Alliance

在最近几个月,一个新的计划正在形成,旨在标准化现有的各种 Ajax 和 JavaScript 代码库。 一些公司实体已经走到一起,共同起草了新的OpenAjax标准(包括 IBM、Adobe、Opera 和 Mozilla)。

今天,我们宣布了一个新的插件,您可以使用它使 jQuery 符合 OpenAjax 标准。 通过这样做,jQuery 成为第一个使其代码库符合新标准的项目之一。

目前,符合标准的要求相对简单,但仍然非常重要。 相关的规则可以概括如下

  • 所有库必须向 OpenAjax 主库注册自身(其名称、版本和命名空间)。
  • 所有库必须注册它们使用的任何全局变量(在 jQuery 的情况下,它是“jQuery”,或者可选的“$”,默认情况下只包含“jQuery”)。
  • 任何尝试注册“onload”或“onunload”处理程序的行为都必须通过 OpenAjax 库进行。 在 jQuery 的情况下,如果您执行:$(window).load(function),并且包含了 OpenAjax,jQuery 将使用 OpenAjax 的解决方案。
  • 库不得干扰其他库遍历 HTML DOM 文档的能力。

您可以查看jQuery 的符合性结果,以验证它确实通过了测试套件。

如果您希望将 jQuery 与其他支持 OpenAjax 的库结合使用,该过程非常简单。

步骤 1 下载jQuery OpenAjax 插件的副本到您的服务器。

步骤 2 在包含 jQuery 之后,在您的站点中包含该库。

<script src="jquery.js"></script>
<script src="jquery.openajax.js"></script>

请确保在包含官方 OpenAjax 库本身之后包含 jQuery 和 jQuery OpenAjax 插件。

就是这样! jQuery 现在可以与 OpenAjax 核心库愉快地协作。

需要注意的是,目前 jQuery 并非OpenAjax 联盟的一部分,但我们正在申请加入,并渴望积极参与。

jQuery 和 Jack Slocum 的 Ext

发布日期: 作者:

Ext JavaScript Library

今天,我们很荣幸地宣布jQuery 项目Jack SlocumExt 项目已合作将惊人的轻量级且功能强大的 jQuery 框架与 Ext 的出色 UI 库集成在一起。 这次合作将极大地增强这两个项目的 capabilities,并扩展 jQuery JavaScript 库和 Ext UI 组件套件使用者的可用功能。

具体来说,即将发布的 Ext 1.0 版本将能够在 jQuery JavaScript 库上原生运行。 不需要其他库。 jQuery 和 Ext 团队正在积极合作将此集成引入 Ext 代码库。

以下是一些可能的问题和答案(欢迎在评论中发布您遇到的任何其他问题)。

是什么促成了这次合作?

Ext 拥有一些很棒的组件——可以说,是网络上最好的组件。 jQuery 拥有支持 Ext 的所有核心功能。 jQuery 团队联系了 Jack Slocum,希望我们能够共同努力将 jQuery 支持添加到 Ext 库中,而 Jack 全心全意地同意了。 这对双方来说都是双赢:jQuery 获得了一些很棒的组件,Ext 获得了大量的新用户。

这对 jQuery 和 Ext 用户有什么好处?

jQuery 用户将获得大量经过精心设计的组件,他们可以立即部署这些组件。 此外,他们将能够以更符合 jQuery 哲学的方式使用它们(例如,能够在元素集上调用 Ext 查询、链接调用、利用 jQuery 对真正的无干扰 DOM 脚本的支持等)。

同时,现有的 Ext 用户将获得使用 Ext 的专业级组件的灵活性,同时利用轻量级、体积小(约 19k)且功能强大的 jQuery 框架。

两个团队将如何合作?

在 Ext 1.0 的第一个 beta 版本发布后,jQuery 将提供一个
突击队,他们将努力解决 Ext 中的所有集成点。 同时,Jack 将努力隔离所有剩余的框架特定代码,使我们更容易完成转换过程。 所有这些将在 Ext 的最终 1.0 版本中到位,该版本将支持 Yahoo UI 和 jQuery。

如何处理支持?

jQuery 团队将负责支持 jQuery 版本的 Ext 中可能存在的任何错误。

Ext 本身支持将继续通过Ext 论坛处理。 Ext 项目还将开始为其企业用户提供一定程度的付费支持。

Ext 1.0 for jQuery 将包含哪些 Ext 功能?

所有可用的 Ext 1.0 功能都将得到 jQuery 的支持。

Ext 1.0 的最终功能列表仍在最终确定中,但可以预期将拥有大量的新功能。

Ext 1.0 for jQuery 何时可用?

最终发布日期尚未确定,一旦准备就绪,我们将通过 jQuery 博客、jQuery 邮件列表、Ext 项目网站和 Ext 论坛发布正式公告。

刚发布了Ext 1.0 的 alpha 版本,但尚未包含 jQuery 兼容层。

是否存在任何许可问题?

没有。 jQuery 的许可证将保持不变,Ext 1.0 将完全开源(LGPL)。

此外,企业可以购买 Ext 支持许可证。 这将包括电子邮件支持和 SVN 访问,以及其他功能。

更新: 将这个故事添加到 Digg 上!

示例

以下是用 Ext 可以做到的示例。(所有演示目前都运行在 Yahoo UI 上,因为 Ext 1.0 alpha 版本不支持 jQuery。)

分页的动态网格

Ext Paged Grid

混合内容菜单

Ext Mixed Content Menus

高级对话框布局和主题

Ext Dialog Layout

消息框对话框

Ext Message Box Dialog

拖放树

Ext Drag and Drop Trees

jQuery IRC 频道

发布日期: 作者:

除了 jQuery 的出色邮件列表文档之外,还有一个地方可以寻求有关 jQuery 问题的帮助:我们有一个非常活跃的 jQuery IRC 频道。

尽管从未正式宣布过,但该频道目前平均有 50 多个同时在线用户,其中还包括一些友好的 jQuery 机器人! 该频道托管在 irc.freenode.net 上,#jquery 始终有在线用户愿意回答您的问题(这些问题通常会在提出后的几分钟内得到解答)。

以下是如何连接到该频道所需的信息
服务器: irc.freenode.net
房间: #jquery

jQuery 团队成员,尤其是John Resig(昵称:JohnResig)、Joern Zaefferer(昵称:JoernZaefferer)和Yehuda Katz(昵称:wycats)经常参加,帮助经验丰富的用户和新手解决复杂和简单的问题。

如果您需要以下方面的快速帮助,IRC 频道是最佳选择

  • JavaScript
  • jQuery 语法
  • 问题解决
  • 奇怪的错误

如果您的问题更深入,我们可能会要求您发布到邮件列表错误跟踪器,以便我们可以在更合适的环境中帮助您。

此外,我们最近开始记录该频道,因此您现在可以回顾过去以找到您以前问题的答案:jQuery IRC 频道日志

jQuery 夜间构建

发布日期: 作者:

讨论邮件列表(阅读:我)中某些成员的抱怨和咬牙切齿之后,我们现在有了自动化的 jQuery 夜间构建,准备供大众使用。 这些构建是为了满足我们社区成员的要求,他们希望在自己的项目中尝试 jQuery 的最新功能,但出于各种原因,发现自己身处限制他们访问Subversion 存储库的防火墙之后。

话不多说,以下是一些细节:您可以在https://jqueryjs.cn/src/nightlies/获得最新的 jQuery 版本。 此文件夹将简单地显示您可用的文件列表。 其中有 4 个文件是大多数人最感兴趣的……

  1. jquery-nightly.js——不言而喻。 它是未压缩的 jQuery。 嗯…… 来自存储库的新鲜版本
  2. jquery-nightly.pack.js——正如您中最有洞察力的人已经猜到,它是 打包的 #1 版本
  3. jquery-nightly.release.zip——这包含文档、测试套件和所有预构建的 jQuery 版本
  4. jquery-nightly.build.zip——这对我们这些身处企业防火墙后的可怜人来说是真正的福音。 它包含来自存储库的完整 jquery 路径,是您构建自己的 jQuery 所需的一切

nightlies 文件夹也将填满所有这 4 个文件的日期版本,以便您可以找到您喜欢的任何版本的 jQuery。

nightlies 的新版本将每天美国东部时间凌晨 2 点(格林威治标准时间上午 7 点)添加,并将包含当时 Subversion 存储库中最新的修订版。

如果您对所有这些关于 Subversion、存储库、最新版本和夜间构建的讨论感到不安,别担心。 您需要的稳定版下载就在这里等着您。

感谢 John Resig 为我们提供了服务器端魔法,让我们能够运行这个自动化的构建流程(更不用说服务器、带宽和 jQuery 本身了:))。

jQuery 项目团队新成员

发布于 作者

jQuery 团队欢迎我们的最新团队成员,Yehuda KatzNate CavanaughKlaus Hartl。这三位开发人员在时间、知识和对社区的承诺方面为 jQuery 项目做出了宝贵的贡献。

Yehuda 是一位住在纽约市的开发者,维护着网站 Visual jQuery 并出版 Visual jQuery 杂志。此外,他经常为 jQuery 博客贡献文章,并推动 jQuery 核心中的良好实践。作为宣传团队的一员,他致力于帮助人们发现 jQuery;积极寻找并向新用户推广 jQuery。

Nate 是一位住在加州的设计师。他负责了 jQuery 网站的最新改版。他将帮助设计网站的新部分,并帮助将过时的部分与其他部分保持一致。他还致力于从批判的角度审视如何使用 jQuery 作为设计工具来帮助推广非侵入式设计原则。

Klaus 一直是 jQuery 和非侵入式设计在 jQuery 邮件列表中最积极的支持者之一。他能够熟练地解释高质量、非侵入式的解决方案,这对于 jQuery 项目来说将是巨大的财富。Klaus 将与宣传和开发团队合作,帮助推广 jQuery 并扩大其影响力,以及维护 Thickbox 和 Tabs 插件。他还将带头努力将 Tabs 变成一个官方插件。

我们很高兴与大家合作,并欢迎大家加入 jQuery 团队

新的 jQuery API 浏览器

发布于 作者

jQuery 团队继续推出额外的工具和资源,使使用 jQuery 进行开发变得轻松、高效和富有成效。jQuery 日益丰富的工具列表中最新添加的是项目团队负责人 Jorn Zaefferer 的新 jQuery API 浏览器。

jQuery API Browser
访问:http://jquery.bassistance.de/api-browser/

jQuery API 浏览器提供了一个直观的界面,可以快速查找有关 jQuery 方法和属性的信息。功能包括

  • 选项卡式导航
  • 类别树视图
  • 导航和主要内容的快速搜索
  • HTML 和 JavaScript 代码片段的代码高亮
  • 一个允许您调整导航/内容窗格大小的垂直分隔线
  • 突出显示内容中选定的方法
  • 方法参数的样式化工具提示

API 浏览器可在线使用,也可以下载用于本地使用。

jQuery 项目提供了一个全面且不断增长的资源列表,为开发者提供文档、教程以及网站开发的插件/小部件。

jQuery
https://jqueryjs.cn/

插件和 UI 小部件/控件
http://docs.jquery.com/Plugins

文档
http://docs.jquery.com/Main_Page
http://www.visualjquery.com/
http://jquery.bassistance.de/api-browser/

杂志
http://www.visualjquery.com/magazine/

邮件列表
https://jqueryjs.cn/discuss/

项目博客
https://blog.jqueryjs.cn/

学习资源
http://docs.jquery.com/Tutorials
http://www.learningjquery.com/
http://15daysofjquery.com/

关于
http://docs.jquery.com/Sites_Using_jQuery
http://docs.jquery.com/About/Contributors

别忘了在 Digg 上 推荐这篇文章

jQuery 1.1.1

发布于 作者

1.1 的 bug 修复版本现已发布,供所有人使用。在 1.1 发布后,我们发现了一些奇怪的行为,需要尽快解决。如果您在使用 1.1 版本时遇到任何困难,请尝试使用这个新版本,看看您的问题是否已解决。

强烈建议您升级。

与往常一样,如果您对新版本有任何疑问或疑虑,请随时在 jQuery 邮件列表 上进行讨论。如果您认为您发现了一个 bug,请 将其添加到 bug 跟踪器

下载

所有在 jQuery 中修复的 bug 都可以在主要的 bug 修复 列表中找到。与本版本相关的最重要的 bug 修复如下

  1. 设置 css 属性的数值失败,例如:.css(“opacity”,0.5)(也发生在 zIndex、fontWeight 上)
  2. 使用 jQuery 对象作为上下文调用 $(…, jqobj) 失败。
  3. 访问不存在的元素上的属性会导致错误,例如:$(“#foobar”).attr(“id”)
  4. 在没有回调函数的情况下调用 .load() 会导致错误。
  5. 您无法取消使用 .trigger() 或 .click() 触发的事件(例如)。
  6. 将单个 DOM 元素添加到 jQuery 对象中时,.add() 会失效。
  7. 将未定义的值传递给 $.post() 会导致奇怪的错误发生。
  8. 在示例文档中访问子节点不起作用。
  9. jQuery.isFunction() 无法以跨浏览器的方式可靠地确定函数。
  10. 在 IE 中触发 .click() 失败。
  11. 触发的点击处理程序在大多数浏览器中被执行了两次。
  12. 传递到 $(“…”) 中的换行符导致 Firefox 进入无限循环。
  13. 在没有任何数据的情况下调用 $.post() 会导致错误。
  14. 在子选择器之后调用后代选择器会导致奇怪的结果,例如:$(“ul > li ul”)
  15. 如果某个事件没有绑定事件处理程序,则不会发生触发的事件。

界面 1.1 发布

发布于 作者

流行的基于 jQuery 的拖放、动画和部件库 Interface发布了 1.1 版本,以配合 jQuery 1.1 的发布。

Interface Color Picker

关于此版本需要注意几点

  • 全新的 animateClass、animateStyle 和 animateColor 处理程序。您现在可以从一个特定的类动画到另一个类,以及从一种颜色动画到另一种颜色。
  • 可拖放和可排序元素的速度得到了大幅提升。
  • 文档已全面更新,现在非常全面。
  • 下载区域已重新设计,并且完全交互式。
  • 有大量 演示 可供观看。他们更新了许多现有的演示,并添加了一些全新的演示,例如:颜色选择器图像裁剪器全景视图 以及一个 文件夹树

总的来说,这是一个非常棒的版本。如果您还没有机会试用 Interface,我建议您现在就开始试用。

jQuery 生日:1.1、新网站、新文档

发布于 作者

好消息,大家!今天是 jQuery 的一周年“生日”!(我在一年前的今天,在 纽约 BarCamp 上发布了它)为了庆祝,我们准备了一堆东西供大家享用。

1) jQuery 1.1

这是一个很棒的版本 - 包含大量的 bug 修复、巨大的速度提升 以及对出色 API 的 重大简化。强烈建议您升级,以获得此版本的所有好处。

立即下载

升级指南

在从 1.0.4 升级到 1.1 之前,请仔细阅读这些指南 - API 做了一些更改,这些指南详细说明了如何解决这些问题,以及如何使用新的 jQuery 1.0 兼容插件 在 1.1 中保留 1.0 风格的功能。

新功能

  • 根据 我们的统计jQuery 1.1 的选择器比 jQuery 1.0.4 中的选择器快 10 倍到 20 倍。这应该会在您的 jQuery 应用程序中带来明显的差异。
  • 常见的选择器,如 div#iddiv .classtd:nth-child(1)div > div 速度都明显提高。这真是天壤之别。试一试,您就会明白。
  • 您现在可以将函数作为属性或 css 属性的值传递。函数将被执行,其返回值将被设置为该属性的值。例如
    // 1.0 Code
    $("a").each(function(){
        $(this).attr("href", "/item/" + this.id);
    }).show();
    
    // 1.1 Code
    $("a").attr("href", function(){ return "/item/" + this.id; }).show();
  • 您现在可以在事件处理程序内部取消绑定事件处理程序。这使您可以拥有仅绑定特定执行次数的事件处理程序,例如
    $("button").click(function(e){
        // Unbind the event handler if a specific form is hidden
        if ( $("#submitForm").is(":hidden") ) {
            $(this).unbind( e );
        }
    });
  • 轻松绑定仅发生一次的事件(这取代了旧的 .oneclick() 功能)
    // Show a thank you message for a form submission, but only once
    $("form").one("submit",function(){
        $("#thankyou").show();
    });
  • 您现在可以设置元素的文本值(这与 .html() 不同,在 .text() 中,所有 HTML 都将显示为文本)。
    $("pre").text("<b>Hello</b>, how are you?");
    
    // Result:
    <pre>&lt;b&gt;Hello&lt;/b&gt;, how are you?</pre>
  • 您现在可以使用自定义函数构建自己的过滤器。(这在 1.0 中已经存在,但文档并不完善。)
    // Find all divs whose parent isn't hidden
    $("div").filter(function(){
      return $(this).parent(":hidden").length > 0;
    });
  • 您现在可以将逗号分隔的选择器列表传递给以下过滤器函数
    filter、find、not、siblings、parents、children、next、prev。这使您可以做一些非常酷的事情

    // Find all radio buttons, or checkboxes, in a form
    $("form input").filter(":radio, :checkbox");
    
    // Find the next element that's a span, or a div
    $(this).next("span, div");

2) 更新的网站设计

jQuery Site Screenshot
jQuery 网站的设计终于进行了急需的改版。这是由出色的 jQuery 设计团队 规划,并由 Nate Cavanaugh 实施的。设计团队计划进行全面重新设计/重构,但我们希望能够帮助我们从当前设计过渡到彻底改造。希望您喜欢它 - 并一定要感谢 Nate、Bradley 或 Skye 为他们出色的工作!

3) 重新设计的文档

我们最近一直在努力的一大重点是真正整合并分类 jQuery 文档、教程和 API,并将它们整合到一个集中位置。这项努力的结果是新的
http://docs.jquery.com/
所有 jQuery 文档都可以在这个集中位置找到 - 使您更容易找到所需内容,并更快地完成工作。我们希望您喜欢这种新的结构,如果您有任何建议,请告诉我们,我们可以添加什么来使其更好。

4) 一个秘密…

我们已经保留了这个一段时间,但我们终于准备好发布了… jQuery 书籍正在制作中! 一家激动人心的出版商已经介入,作者已经完成了四分之一的写作。还有一些细节正在完善中,我们将在一旦接近完成时告知大家,但目前看来我们将在春季末/夏季初发布第一本 jQuery 书籍!

Blank Book

希望您喜欢一切 - 我们付出了大量的时间和精力,使这次发布非常棒。一定要感谢 jQuery 团队 的每个人,他们付出了大量时间和精力,使这次发布能够顺利完成。

我将在明天发布一篇“状态查询”帖子,讨论 jQuery 在过去一年中的发展历程,传教团队也将发布几篇博文,介绍如何使用新的 jQuery 1.1。

感谢大家,让 jQuery 的第一年如此精彩。