jQuery 基金会和标准

发布于 作者

大多数 Web 开发人员将 jQuery 视为其根源,一个试图为各种不同的 API 和跨浏览器差异带来理智的库。虽然这是 jQuery 诞生的目的之一,并且现在仍然是,但它并不是唯一的目的。jQuery 定义了一个有用的 API,它使操作单个元素与操作十几个元素一样容易。jQuery 简化了冗长的 DOM API 名称并消除了冗长的样板代码,从而更轻松地编写和阅读代码。jQuery 添加了超出标准 API 的功能,用于 Web 开发人员经常需要执行的任务。

简而言之,jQuery 不仅仅是浏览器的 API 修理工。我们需要修复问题时,我们会修复。但我们更感兴趣的是让浏览器修复它们自身的问题,以及塑造未来的标准以避免问题,这样原生 API 就可以从一开始就正常工作。然后我们就可以在这坚实的基础上构建有用的功能。

jQuery 团队成员拥有丰富的实际经验,可以引导标准走向正确的方向。最早的例子是 querySelectorAll 方法,John Resig 指出 该实现并非 JavaScript 开发人员真正需要的。不幸的是,在 querySelectorAll 的情况下,已经太晚了,无法做任何事情来解决问题。

jQuery 如何塑造标准

为了对新兴标准提供意见,jQuery 基金会于去年加入了万维网联盟 (W3C) 和 ECMA 国际组织。事实上,这是成立基金会的主要原因之一。W3C 和 ECMA 成员往往是浏览器和商业软件制造商的代表。我们相信,我们将基层 Web 开发人员的声音带到了标准制定过程中。

Yehuda Katz 和 Rick Waldron 一直积极参与 ECMA TC39 小组,该小组正式定义了被称为 EcmaScript 的语言,但我们称之为 JavaScript。Rick 优秀的 会议记录 可以让你对他们在面对面会议期间进行的讨论有一个内部了解。

Scott González 和 Kris Borchers 一直致力于完善 指针事件标准。它为处理指针技术带来了简单、规律和理智,这样开发人员就不会遇到触摸和鼠标的不一致(和冲突!)事件模型。在过渡期间,开发人员将处理三种指针模型——鼠标、触摸和指针。jQuery 和 jQuery UI 希望简化这种向标准的过渡。

Julian Aubourg 一直参与 XMLHttpRequest 标准 的修订,他一直为 jQuery 的 $.ajax 实现经受过实战考验。了解 jQuery 已经解决的所有问题,为他提供了经验,可以在未来避免同样的问题。

Scott González 和 TJ VanToll 一直积极参与定义 HTML5 输入类型,如 <input type=”date”>,提供基于 jQuery UI 经验的 实际输入。TJ 在波特兰 jQuery 大会上的 演讲 很好地涵盖了当今使用 HTML5 输入类型的陷阱,以及 Web Components 等新兴标准,这些标准可以使 Web 开发人员的工作更容易。

jQuery 基金会也是无障碍的坚定倡导者;我们希望让 Web 开发人员更容易接触到所有用户,包括有视力或运动障碍的用户。W3C 通过 Web 无障碍倡议 解决这些问题,特别是通过 无障碍富互联网应用程序 (ARIA)。jQuery UI 小部件正在整合 ARIA 属性,基金会成员 Deque Systems 赞助了多个关于 jQuery 无障碍问题的活动。

最后,我们协调并将报告给 jQuery 的错误转发给特定浏览器中由于标准违反而导致的错误。由于大多数浏览器每隔几个月就会更新一次,因此让 jQuery 为临时问题整合庞大而复杂的错误修复通常没有意义。但我们致力于尽快让浏览器制造商解决这些问题。

一个标准驱动的 jQuery 未来

jQuery 不是一个高度固执己见的框架,它不会要求对所有 DOM 进行控制。在大多数情况下,你可以(并且通常应该)将 DOM API 与 jQuery 结合使用。这始终是预期的设计;你可以在事件处理程序中的 this 对象是 DOM 元素而不是 jQuery 对象等方面看到这一点。jQuery 需要控制的唯一地方是当 DOM 中的元素通过 .html() 等方法替换或通过 .empty() 等方法删除时,以便可以清除任何关联的 jQuery 数据。

类似地,内置的 HTML5 输入类型可以与 jQuery UI 输入小部件共存。jQuery UI 致力于提供提供出色功能且不牺牲无障碍性的用户界面小部件,本质上支持 ARIA 等标准。

jQuery 基金会希望基于标准的 API 和尖端的 JavaScript 功能可以直接被开发人员使用。好消息是,社区在这方面取得了良好的进展,jQuery 团队成员通过参与标准制定过程提供了帮助。然而,Web 标准和实践的不断发展,加上充满活力的第三方插件和知识生态系统,仍然提供了令人信服的理由来使用 jQuery。Web 开发人员应该获得两者兼得的最佳体验。

评论已关闭。