微软将扩大与 jQuery 社区的合作

发布日期: 作者:

jQuery 项目很高兴地宣布,微软正在通过新的举措来扩大对 jQuery JavaScript 库的支持,包括代码贡献、产品集成和分配更多资源。

基于与 jQuery 项目两年来的合作,微软在 MIX 2010 上宣布,将与 jQuery 核心团队和社区合作,提供将有助于进一步推进 jQuery JavaScript 库的源代码。计划的贡献针对双方共同感兴趣领域中的特定功能。它们包括

  • 模板
  • 脚本加载
  • 数据绑定

最初的重点将放在一个新的模板引擎上,该引擎将允许通过定义的模板轻松灵活地进行数据渲染。微软已经提交了公开审查提案以及实验性插件,并正在积极与 jQuery 团队和社区合作,以实现统一的实现。模板引擎将经过审查,并考虑是否将其包含到 jQuery JavaScript 库中,或作为官方 jQuery 插件维护。

微软还将在 Visual Studio 2010 和 ASP.NET MVC 中发布当前版本的 jQuery JavaScript 库,并将继续在 Microsoft CDN 上托管当前版本的库。

最后,微软将提供资源来帮助在新的环境中进行 jQuery 的 QA 测试,以确保库的持续稳定性和持久性。

我们认为这些贡献对 jQuery 工作和社区来说将是一项巨大的益处,并期待与微软继续合作。

jQuery 大会 2010:旧金山湾区宣布

发布日期: 作者:

微软硅谷研究中心jQuery 项目非常高兴地宣布我们首届旧金山湾区大会的日期。该大会将于 2010 年 4 月 24 日和 25 日在加州山景城的微软硅谷研究中心举行。

旧金山湾区大会是 jQuery 项目在 2010 年计划举办的四场活动中的第二场。第一场是jQuery14 活动,今年晚些时候还计划在欧洲和东海岸举办更多大会。

这是该项目迄今为止合作过的最大的场馆(2007 年哈佛法学院、2008 年麻省理工学院斯塔塔中心和 2009 年微软新英格兰研究中心),我们预计门票会很快售罄。

目前计划于 3 月 17 日星期三开始注册;门票价格为 199 美元。除了普通门票外,我们还提供数量有限的优惠学生票,价格为 99 美元,凭有效学生证购买。

关注jQuery 博客jQuery Twitter 订阅,以便在注册开放时收到通知。

您将可以期待的一些内容的简要概述

  • jQuery
  • jQuery UI
  • jQuery 插件
  • 复杂应用程序开发
  • jQuery 案例研究

除了为期两天的 jQuery 会议外,我们还将首次在主活动之前增加为期一天的 jQuery 培训。培训将由appendTo 提供,重点帮助您和您的团队在参加会议之前快速了解 jQuery。培训将涵盖以下主题

  • jQuery 简介
  • 查找内容
  • 对内容进行操作
  • 链式操作
  • jQuery UI 简介
  • 实现 jQuery UI 小部件

培训将于 4 月 23 日在旧金山市中心的微软旧金山办事处举行;票价为 299 美元。所有培训收益将捐赠给 jQuery 项目。

有兴趣发言?请填写我们的演讲提交表,并关注jQuery 博客以获取更新。

jQuery 1.4.2 发布

发布日期: 作者:

jQuery 1.4.2 现已发布!这是在 jQuery 1.4 之上的第二个次要版本,修复了 1.4 版本中的一些未解决的错误,并实现了一些不错的改进。

我要感谢以下为此次发布提供补丁的人:Ben Alman、Justin Meyer、Neeraj Singh 和 Noah Sloan。

下载

与往常一样,我们提供两个版本的 jQuery,一个最小化(我们现在使用Google Closure Compiler 作为默认的最小化程序)和一个未压缩(用于调试或阅读)。

您可以随意将以上 URL 直接包含到您的网站中,您将获得快速加载的 jQuery 带来的全部性能优势。

此外,您还可以直接从 Google 或 Microsoft 的 CDN 加载 URL

新功能

可以在jQuery API 网站上的 1.4.2 类别中找到 API 更改的完整列表。

在此版本中,我们添加了两种新方法:.delegate().undelegate()。这些方法是对 jQuery 中现有 .live().die() 方法的补充。它们简化了监视文档中某个根元素的特定事件的过程。

例如

$("table").delegate("td", "hover", function(){
	$(this).toggleClass("hover");
});

这等效于使用 .live() 编写的以下代码

$("table").each(function(){
	$("td", this).live("hover", function(){
		$(this).toggleClass("hover");
	});
});

此外,.live() 大致等效于以下 .delegate() 代码。

$(document).delegate("td", "hover", function(){
	$(this).toggleClass("hover");
});

有什么变化?

在此版本中,代码进行了大量重写,既是为了提高性能,也是为了解决长期存在的问题。

性能改进

与几乎所有版本的 jQuery 都是一样:我们努力不断改进代码库的性能,确保为您提供性能最佳的 JavaScript 代码。

根据Taskspeed 基准测试 提供的数据,我们已将 jQuery 的性能提高了约 2 倍,相比 jQuery 1.4.1 提高了约 3 倍,相比 jQuery 1.3.2 提高了约 3 倍。

jQuery Taskspeed Results (Feb 14, 2010)

具体来说,我们改进了 jQuery 中 4 个方面的性能

虽然像 Taskspeed 这样的综合基准测试在分解为单独的子测试以供进一步研究时可能很有趣,但作为项目,我们倾向于避免将它们用作真实整体库性能的准确度量。考虑到构成库的许多方面,更不用说它们提供的不同技术了,累积结果很少能反映实际用户使用库的方式。

例如,我们仅通过优化 $("body") 选择器就在 Taskspeed 中看到了显著的整体性能提升,因为它在测试中被调用了数百次。此外,我们通过优化 .bind().unbind() 提高了性能,尽管仅提高了几毫秒,但这也是微不足道的,尤其是在您可能希望使用 .live().delegate() 而不是绑定数百个事件的情况下。

我们还收集了一些来自其他主要库的结果,但我们对这些结果不太感兴趣,对我们来说,更重要的是我们对 jQuery 本身的旧版本所做出的性能改进。

我们将继续优化 jQuery 代码库,并会一直持续下去。始终努力提供尽可能快的 JavaScript/DOM 开发体验是我们一直关注的重点。是的,可能总会有一些方法可以提高性能,无论是通过内部优化,还是通过将关键功能推送到浏览器领域以进行标准化。

事件重写

最大的内部更改来自于对事件模块的急需的结构重写。许多与事件绑定相关的古怪问题已通过这些修复得以解决。

具体来说,事件处理程序不再作为对象属性存储在 jQuery 的内部对象存储中(带有附加到处理程序的元数据)。而是存储在内部对象数组中。

如果您曾经有机会在 jQuery 元素上使用 .data("events"),您会发现它会返回一个对象,其中包含当前绑定的所有事件类型。

为了列举在此重写过程中发生的一些更改

  • 现在可以在所有情况下绑定具有不同数据、命名空间和事件类型的相同处理程序。
  • 在某个处理程序移除自身(或其兄弟处理程序)后,事件处理程序的执行将继续进行。
  • 我们不再将数据/命名空间信息直接附加到事件处理程序(仅一个唯一的跟踪 ID)。
  • 我们不再在内部使用代理函数来尝试封装处理程序。
  • 事件的执行顺序现在在所有浏览器中都有保证。Google Chrome 存在一个长期存在的对象循环逻辑错误,我们已经绕过了它。

作为这些更改的副作用,我们不得不改变新公开的特殊添加/特殊移除 API,以适应新的事件数据对象。Ben Alman 正在编写一个关于 jQuery 特殊事件系统的 大型教程,我们将在该教程完成后发布更多公告。

错误修复

在这个小版本中,总共修复了 40 个已关闭的票证。有些与 jQuery 1.3.2 和 jQuery 1.4.x 之间的差异有关,有些修复了长期存在的问题(比如事件模块重写的情况)。

原始数据

这是我们收集用来生成上述图表的数据。

	jQuery 1.3.2	jQuery 1.4.1	jQuery 1.4.2	Prototype 1.6.1	MooTools 1.2.4	Dojo 1.4.1	YUI 3.0.0
FF 3.5	2182	806	 565	 2156	 1073	 575	 1885
FF 3.6	1352	677	 519	 2067	 857	 750	 1494
Opera	983	697	 222	 793	 678	 218	 1201
Safari	610	435	 252	 315	 235	 238	 612
Chrome	1591	703	 293	 271	 312	 222	 745
IE 8	2470	1937	 1141	 3045	 4749	 1420	 2922
IE 7	4468	3470	 1705	 9863	 10034	 1737	 5830
IE 6	6517	4468	 2110	 13499	 11453	 2202	 7295

14 天 jQuery 总结:第 8-14 天,jQuery 1.4.1 发布

发布于 作者

如果您没有关注 14 天 jQuery,以下是对第 8-14 天发布内容的总结。

亮点

在第 12 天,jQuery 团队 发布了 jQuery 1.4.1,这是 jQuery 1.4 的第一个错误修复版本。jQuery 1.4.1 现在是 jQuery 的最新版本;请花点时间查看 1.4.1 版本说明

在第 13 天,团队 宣布了新的 jQuery Meetups 网站。我们希望帮助促进本地聚会,并最终为您的团队提供更多资源。

jQuery Meetups

在第 14 天,jQuery UI 团队发布了 jQuery UI 1.8 Release Candidate 1。我们希望您能测试并提供反馈,在 jQuery UI 开发论坛 中报告错误或评论。

完整回顾

第 8 天

  • jQuery 项目
  • jQuery.org

第 9 天

  • jQuery 工作坊赠品
  • jQuery Podcast 第 8 集:api.jquery.com
  • jQuery 1.4 Hawtness #3,与 Paul Irish 共同呈现
  • jQuery API 键导航

第 10 天

  • jQuery 1.4 Hawtness #4,与 Paul Irish 共同呈现

第 11 天

  • 使用 jQuery 进行事件编程,Yehuda Katz
  • 14 天 jQuery 背后的故事

第 12 天

  • jQuery 1.4.1 发布
  • jQuery 1.4 Hawtness #5,与 Paul Irish 共同呈现

第 13 天

  • jQuery Meetups
  • jQuery 1.4 Hawtness #6,与 Paul Irish 共同呈现
  • Paul Irish 和 Dave Methvin 加入 jQuery 团队

第 14 天

  • jQuery UI 1.8rc1

赞助商和捐赠

再次强调,如果没有来自我们 伟大的赞助商 和 jQuery 社区的支持,这样的活动是不可能实现的。我们要感谢所有在本活动期间捐赠的人。我们收到了来自 653 位人士的捐赠,我们真诚地感谢所有贡献者。如果您错过了本次活动,您仍然可以 发送免税捐赠 或向我们的赞助商表示感谢,以表达 jQuery 为您的生活带来的便利程度。

Netflix

Netflix, Inc. (NASDAQ: NFLX) 是全球最大的在线电影租赁服务提供商,拥有超过 1100 万订阅用户。只需每月 8.99 美元,Netflix 会员即可观看无限量的电影和电视剧集,这些节目可以流式传输到他们的电视和电脑上,也可以收到无限量的 DVD,这些 DVD 会快速送到他们的家。

JupiterIT

Jupiter 提供专业的 Web 应用程序开发、支持服务和培训。Jupiter 致力于开源,它将其在全球范围内提供企业 JavaScript 应用程序的经验汇集起来,并将其作为 JavaScriptMVC 公开发布。

appendTo

appendTo,一家 jQuery 公司,为全球 Web 开发社区和企业提供行业领先的 jQuery 培训和支持服务。利用“少写代码,做更多事情”的 JavaScript 库的强大功能以及 jQuery 团队成员的丰富经验,appendTo 站在推动 jQuery 运动进入下一代开源技术进步的最前沿。

Oxide Design

Oxide Design Co. 是一家传播和信息设计公司。我们专门从事企业标识、品牌策略、包装、印刷和网站设计。我们澄清想法以创造有效的 设计。

Fusionary

我们是 Fusionary,一家屡获殊荣的 Web 和互动工作室。自 1995 年以来,我们一直在网上创造事物,我们的客户非常喜欢我们。

团队希望您喜欢这次庆祝 jQuery 1.4 版本发布的在线会议。我们非常乐意听取您的反馈。 请在新的 jQuery 论坛的这个帖子中提交您的反馈。

jQuery.org

发布于 作者

今天,我们很高兴宣布全新的 jQuery.org 网站:jQuery 项目的首页。

jQuery.org

jQuery.org 网站由 jQuery 社区成员 Boaz Sender 设计和实现。

您可能认识旧的 jQuery 文档网站上的大部分内容,但它已经过重新整理,并以更适合更大 jQuery 项目的方式呈现。

jQuery.org: Team jQuery.org: History jQuery.org: About

jQuery.org: License jQuery.org: Donate

此次发布与 jQuery 项目的正式化同步进行,追溯到我们 加入软件自由保护协会 的时候。拥有一个更大的 jQuery 项目的官方首页应该有利于项目的未来发展和整体组织。您可以在 关于 jQuery 项目的这个视频 中了解有关该组织的更多信息。


最初发表于 14 天 jQuery存档)。

新的 jQuery 论坛

发布于 作者

今天,我们正式宣布全新的 jQuery 论坛。在过去的 4 年中,我们一直在使用邮件列表,以及随后的 Google Groups,来管理 jQuery 周围的讨论和社区。该特定解决方案在参与度和 管理垃圾邮件 方面,根本无法满足我们的讨论需求。

New jQuery Forum

在寻找新的讨论区域时,我们考察了各种解决方案,并提出了一些主要要求:它必须能够处理常规讨论和现在无处不在的问答。此外,我们希望有一些能够降低提问门槛的东西——任何人都可以使用的东西(因此它必须有一个良好的 Web 界面)。

我们还希望一个团队维护门槛低的解决方案。这意味着要么使用我们与之合作的团队非常通融的托管解决方案,要么使用我们自己托管的解决方案,这种解决方案非常易于使用,并且拥有良好的开发者社区。

最终,我们分析了无数的解决方案,但最终选择使用 Zoho Discussions (Zoho 关于此举的公告)。一系列的决定促使我们做出这个决定。

  • Zoho Discussions 无缝地集成了常规的论坛式讨论和问答。此外,所有审核和管理工具都是围绕构建和管理一个流畅的工作流程来设计的,以便回答问题和解决疑虑。
  • Zoho 的 Discussions 团队非常通融。他们不仅免费提供所有托管服务,而且还尽力解决问题,并整合了我们的所有 Google Groups 历史记录。我们一直在与他们紧密合作,他们已经解决或正在解决我们提出的所有问题。

jQuery 团队在过去的一周里已经开始使用新论坛,并且对它目前的运行状况感到非常满意。大部分旧的 Google Groups 和所有旧的 jQueryHelp.com 帖子都已集成到新系统中。一旦我们在未来一两周内最终关闭这些小组,我们将完成 Google Groups 帖子的导入工作。

我们已经为讨论开设了一些单独的论坛。

随着时间的推移,我们一定会根据需要开设更多论坛——尤其是针对非英语用户的论坛。

目前,两个最突出的未解决问题正在积极解决中。

  • 无法收到所有帖子的电子邮件更新。您可以收到您订阅的单个帖子的电子邮件更新,您还可以收到您创建的帖子的电子邮件更新,但无法同时订阅所有帖子。在此期间,我们建议您订阅 论坛 RSS 订阅源,以查看所有帖子和回复。
  • 网站上的许多页面正在使用“Ajax”方式加载,我们正在将其替换为更传统(更合适)的页面加载方式。完整的过渡将在不久后完成。

我们收集了一些较小的问题,并与 Zoho Discussions 团队保持积极沟通。如果您发现更多问题,请随时在 关于 jQuery 论坛 论坛中发布。

如前所述,我们分析了许多讨论解决方案——实际上是数十个。其中有一些让我们非常满意,并进入了最终候选名单。

  • Stack Overflow 几乎是公认的网络问答之王。那里也已经有一个活跃的 jQuery 用户社区。我们考虑过采用现有的 Stack Overflow 社区以及建立一个 Stack Exchange 作为可能的解决方案。然而,这两种方案都存在一个重大缺陷:它们不适合处理定期、非问答性质的讨论。如果我们要使用其中任何一种解决方案,我们就必须另外建立一个论坛或邮件列表来进行简单的讨论。最终,我们决定放弃这些方案,转而寻找提供更统一社区的方案。
  • 我们还研究了许多传统的论坛解决方案,例如Vanilla Forums。在我们研究过的所有方案中,Vanilla Forums 的结构最符合我们的需求。它拥有一个活跃且组织良好的插件社区,我们能够找到许多解决我们问题的方案。然而,最终,无法用 Vanilla 或一组插件来提供一致的问答功能。我们最终必须将它与 Stack Overflow 或其他服务结合使用。此外,我们必须完全自己托管和开发该解决方案,这需要我们花费时间,而这些时间我们更愿意用在其他方面。
  • 我们还研究了更好的邮件列表解决方案,例如Librelist,但它们没有提供任何简单的 Web 界面(至少不像论坛解决方案那样),这使得新用户很难参与并获得问题的解答。我们真的不想回到 Google Groups 和其他邮件列表提供商的旧讨论方式。

我们借此机会感谢 Zoho Discussions 团队为帮助我们迁移到他们的软件所付出的辛勤努力。他们非常乐于助人,我们很高兴能与他们合作。

此外,我们还要感谢 Chrys Bader、Mike Branski 和旧 jQueryHelp.com 论坛上的其他社区成员的支持和愿意融入新的论坛设置。

再次感谢大家在这次过渡中的帮助。我们希望很快就能解决大多数问题,并期待从今以后一帆风顺。随时可以访问论坛,并且一定要报告您可能遇到的任何问题


最初发布在14 Days of jQuery (存档) 上。

14 Days of jQuery 总结:第 1-7 天

发布日期: 作者:

如果您没有关注14 Days of jQuery,这里简要概述一下迄今为止发布的内容。

预发布第 1 天

  • 新的 jQuery API 网站

预发布第 2 天

  • jQuery 1.4rc1

第 1 天

  • 发布 jQuery 1.4
  • jQuery 1.4 实时问答

第 2 天

  • jQuery 1.4 问答高清版本
  • Media Temple 赠品
  • jQuery 播客第 7 集,与 John Resig 对谈

第 3 天

  • jQuery 1.4 的内部变化,与 John Resig 对谈

第 4 天

  • 参与 jQuery 社区,与 Karl Swedberg 对谈

第 5 天

  • appendTo 培训图纸
  • jQuery 1.4 亮点 #1,与 Paul Irish 对谈

第 6 天

  • 企业中的 jQuery

第 7 天

  • 新的 jQuery 论坛
  • jQuery 1.4 亮点 #2,与 Paul Irish 对谈

我们还有 7 天的 jQuery 1.4 内容,将发布更多视频和公告。

再次感谢我们伟大的赞助商以及 jQuery 社区的支持,没有他们的支持,这些活动就不可能实现。我们感谢迄今为止所有捐款的人,并提醒大家,在14 Days of jQuery 期间捐赠 20 美元或更多,您将获得一本免费的电子书。

Media Temple 赠品

在 14 Days of jQuery 的每一天,一位 Web 开发人员将从 jQuery 项目的 Web 托管提供商Media Temple获得一年免费的 (gs) Grid-Service 帐户。大奖得主将获得一台 13 英寸的 MacBook Pro!

要参加比赛,您必须提交您最酷的 jQuery 使用案例链接。在 14 Days of jQuery 的每一天,我们将选出一名获胜者。大奖得主将在 1 月 29 日星期五宣布。

请查看Media Template 赠品网页,以了解有关比赛的更多详细信息并查看已宣布的每日获胜者。只剩下 7 天时间了,所以立即报名

查看 jQuery Enlightenment!

jQuery EnlightenmentjQuery 团队成员 Cody Lindley 发布了jQuery Enlightenment 这本书,如果您还没有查看,您一定要看看。 “每一章都包含成为经验丰富的 jQuery 开发人员必不可少的概念”,即使您已经有了自己的副本,也为刚开始学习的朋友选一本!更棒的是,所有销售收入的一部分将直接返还给 jQuery 项目,帮助资助未来的版本和项目。感谢 Cody 为 14 Days of jQuery 活动慷慨捐赠!

14 Days of jQuery 和新的 API 浏览器

发布日期: 作者:

新年伊始,jQuery 团队一直在努力工作。我们日夜不停地工作,以发布即将推出的 jQuery 1.4 版本,而且有很多内容要宣布!事实上,内容太多,我们需要十四天才能全部宣布……因此,我宣布The 14 Days of jQuery 1.4

The New jQuery 1.4 Site

从 1 月 14 日开始,我们将举办为期十四天的活动。每天我们将发布新的视频和公告——包括代码版本、项目相关更新以及 jQuery UI 好消息等。除了公告,我们还将在 14 天内发布一组视频,内容包括与 jQuery 1.4 版本相关的演讲和教程以及其他通用的 jQuery 主题。您需要在接下来的两周内每天查看jQuery14.com,了解新内容,或者注册通过电子邮件接收通知。可以把它想象成一个在线会议,只是更长、更自由,而且有点神秘和悬念!

但等等,还有更多!

我们为 1 月 14 日安排了很多计划,但预先发布一些美味的 jQuery 小点心来激发您的食欲似乎是个好主意。访问 jQuery14.com,了解全新的 jQuery API 网站

请务必订阅jQuery14.com 网站或@jquery Twitter 帐户,以便在接下来的几周内获得所有更新。

谁想要免费书籍?

jQuery 项目是一个非营利性开源项目,我们很大程度上依赖于捐款和贡献来帮助资助我们所做的一切。我们现在开始并在 14 Days of jQuery 期间进行筹款活动。如果您是 jQuery 用户,请在活动期间通过向项目捐赠 20 美元或更多来表达您的支持,您将获得一本免费的 jQuery 图书。

务必提及,没有 jQuery 项目赞助商的帮助,这一切都不可能实现;NetflixJupiterIT ConsultingappendToFusionary MediaOxide Design Co 以及我们最喜欢的 jQuery 图书出版商ManningPacktjQuery EnlightenmentO’Reilly 都已签约成为 14 Days of jQuery 1.4 的官方赞助商。

现在就这些——访问jQuery14.com,获取更多内容!

发布 jQuery 1.4 Alpha 2

发布日期: 作者:

发布了 jQuery 1.4 Alpha 2!这是 jQuery 1.4 的第二个 Alpha 版本(之前发布了 Alpha 1)。代码稳定(通过了我们支持的所有浏览器的所有测试)、功能完整(我们不再接受针对此版本的新功能),需要在实际应用程序中进行测试。

获取代码

注意:如果您使用的是 jQuery 1.4a2,并且遇到错误,请确保使用的是代码的常规版本,这将使您更容易发现错误发生的位置。

我如何才能提供帮助?

首先,尝试将上面的 jQuery 1.4a2 非压缩版本放入您正在运行的实际应用程序中。如果您遇到异常或发生奇怪的行为,请立即登录错误跟踪器并提交错误请务必说明您在 jQuery 1.4a2 中遇到了错误!

我们将密切关注收到的错误报告,并努力修复 jQuery 1.3.2 和 jQuery 1.4 之间的任何不一致之处。

有了您的反馈,我们应该能够发布一个稳定的版本。目前,我们计划在新年伊始发布至少一个 beta 版本,并在 1 月初发布最终候选版本。最终版本将在 1 月 14 日发布,恰逢 jQuery 的 4 周年生日。感谢您帮助审查 jQuery 1.4a2!