jQuery UI 1.9 里程碑 4 – 手风琴重新设计

发布日期 作者

jQuery UI 1.9 的第四个里程碑版本发布了,其中包含更新的手风琴小部件。此版本还包括对现有和新小部件的更新和错误修复,这些更新和错误修复将不会包含在 1.8.x 版本中。

什么是里程碑版本?

里程碑版本使您可以更轻松地试用 jQuery UI 的最新开发代码,而不必从 GitHub 中检出代码。

使用里程碑版本,您可以试用已经相当成熟的新小部件(尽管还没有最终完成),并根据具有特定版本号的发布代码提供反馈。

注意:API 可能会发生变化,因为代码仍在积极开发中。

手风琴

手风琴 API 已经 重新设计,使其更简洁、更具扩展性,并与 jQuery UI 中的其他小部件保持一致。我们很乐意收到您在现有代码中可能遇到的任何兼容性问题的反馈。1.8 中支持的所有内容都应在 1.9 中开箱即用;如果出现问题,我们将在最终版本发布之前进行修复。

jQuery.uiBackCompat

如上所述,1.9 将支持 1.8 API 以及重新设计的 API。但是,这会导致两个问题。首先,一些 API 并不完全重叠。例如,在 1.8 中,您可以通过将 active 选项设置为 false-1 来折叠手风琴;但是,在更新 API 后,您可以将 active 选项设置为负数,以便从最后一个面板而不是第一个面板开始激活面板(类似于 .eq())。其次,虽然两个 API 都受支持,但很难测试您是否已成功更新所有代码以与 2.0 版本兼容,该版本将不支持 1.8 API。为了解决这些问题,我们引入了标志 jQuery.uiBackCompat,可用于阻止向后兼容层执行。此标志必须在加载 jQuery 后但在加载 jQuery UI 之前设置。在加载 jQuery UI 后切换此标志将不会产生任何效果。

下载

您可以将 jQuery UI 1.9 里程碑 4 – 手风琴重新设计版本下载为 zip 文件或通过 git 下载

文件下载

Git

如何提供反馈

wiki 页面

要帮助测试手风琴重新设计,请访问我们 开发和规划 wiki 上的 手风琴页面

论坛

如果 wiki 页面上的评论部分没有足够的空间用于您的反馈,请发布到 开发 jQuery UI 论坛 并标记您的帖子

如何贡献代码

如果您对手风琴有代码更改,请在 GitHub 上分叉 jQuery UI 并提交拉取请求。

如果您不熟悉 git 或 GitHub,请查看我们的指南:如何向 jQuery UI 提交修复 – 简单方法

评论

注意:请勿在此博客文章的评论部分中提供有关手风琴小部件的反馈。 此讨论应在 wiki 页面和论坛上进行(请参见上面的“如何提供反馈”)。

如果您对我们发布第四个里程碑版本有任何反馈,请随时在下面发表评论。谢谢。

释放网格

发布日期 作者

jQuery UI 团队很荣幸地宣布,我们正在构建一个功能丰富、速度极快的网格小部件,它将通过数据链接、排序、分页、过滤、行选择和内联编辑来增强 HTML 表格。作为此过程的一部分,我们将把网格的功能构建为独立的小部件,并重新审视现有的 jQuery UI 组件。在这个过程结束时,我们不仅将拥有一个网格,而且还将拥有经过更全面测试、功能更完备的用户界面库。

当前进度

我们即将完成该项目的第 1 阶段的开发,该阶段包括创建通用数据模型、数据类型解析和标记。此阶段将以“零功能网格”告终,这是一个增强版的 HTML 表格,它支持 jQuery UI CSS 框架并充当其他网格功能的基础。请参阅 路线图 以了解计划在未来阶段完成的工作。

开发方法

已经存在许多高质量的 jQuery 网格插件。我们认识到,它们各自都具有令人印象深刻的功能集、功能和 jQuery 社区成员的使用水平。我们正在研究和应用当今最流行的网格和数据表插件中的实践和技术,包括当前的热门插件 SlickGridjqGridDataTables 以及一些已经很久没有更新的插件,例如 TablesorterFlexigridIngrid。我们邀请所有这些插件以及任何其他网格插件的作者和用户参与 jQuery UI 网格的设计。

非我所创?

如您所料,我们非常喜欢 jQuery UI API。我们认为,对复杂插件拥有一个一致的界面对用户来说是一个巨大的胜利。过去,我们有时会调整已经完成的插件。不幸的是,这种方法会导致与遗留错误、与我们其他 API 的不一致以及对原始设计决策的不熟悉相关的头痛问题。通过从头开始构建,我们可以确保每一行代码都经过审查,并且我们称之为“jQuery UI”的任何网格都符合我们的标准。

不仅仅是一个网格

我们不仅仅是开发一个网格,而是设计和构建模块化且可扩展的组件,例如排序、分页、过滤和就地编辑,这些组件可以组合成一个网格。我们相信 jQuery UI 用户会发现用于支持网格的这一套新工具具有引人入胜的创造性用途。

重构交互

虽然 jQuery UI 的鼠标交互插件在许多情况下运行良好,但我们也清楚地意识到它们存在一些挥之不去的缺点,包括它们在表格上正常运行的能力。作为网格开发的一部分,我们将对交互插件进行长期期待的重构,以简化它们的 API、解决边缘情况,并通常确保它们适合更广泛的上下文。

加入我们!

您想帮助设计和构建 jQuery UI 网格吗?分享您的反馈?加入我们在 网格规划 wiki 页面。您可以随时了解开发情况并在 jQuery UI 的 网格分支 上测试最新版本。

赞助商

这项工作得益于个人和企业赞助商的慷慨捐赠。这些赞助商为确保网格工作在未来 5-6 个月内继续进行提供了资金和开发资源。

特别是,jQuery 项目希望感谢以下(截至今天)jQuery UI 网格项目的赞助商

双白金网格赞助商

  • 微软 – 微软 Web 平台和工具团队构建了用于开发网站的许多技术,包括 ASP.NET、ASP.NET MVC、IIS、Visual Web Developer 和 Web Matrix。
  • Adobe – Adobe Systems Incorporated 提供企业、创意和移动软件解决方案,这些解决方案彻底改变了世界与创意和信息互动的方式。
  • 白金网格赞助商

  • Wijmo – Wijmo 是一个包含 30 多个 jQuery UI 小部件的完整套件。它是 jQuery、CSS3、SVG 和 HTML5 的混合体,当它们组合在一起时,就会成为网络上不可阻挡的力量。

如果您或您的公司有兴趣成为 jQuery UI 网格的赞助商,请 联系我们

jQuery UI 1.8.9

发布日期 作者

jQuery UI 1.8 的第九个维护版本发布了。此更新带来了对手风琴、日期选择器、可拖动、可排序和选项卡的错误修复。有关更改的完整列表,请参见 更改日志。您可以在此处下载它

下载

文件下载

Svn(包含与 zip 中的最终文件相同的最终文件,其中 @VERSION 已替换为 1.8.9,所有主题)

Git(包含预构建文件,其中 @VERSION 尚未替换为 1.8.9,仅包含基本主题)

Google Ajax 库 API(CDN)

Microsoft Ajax CDN (CDN)

自定义下载生成器

新功能

日期选择器

日期选择器小部件现在支持阿尔及利亚阿拉伯语、澳大利亚和新西兰的本地化。

变更日志

请查看 1.8.9 升级指南,了解从 1.8.8 升级时可能影响您的更改列表。有关此版本中包含内容的完整详细信息,请参阅 1.8.9 变更日志

致谢

感谢所有帮助发布此版本的人员,特别是:Campbell、cherif、Christoph Burgdorf、Ivan Peters、jorrit、marcos.sousa、Scott González、tobias.istvan。

评论

注意:**请勿使用此博客文章的评论部分报告错误。** 应在 jQuery UI 错误追踪器 中提交错误报告,支持问题应发布在 jQuery 论坛 上。

如果您对我们发布 jQuery UI 1.8 的第九个维护版本有任何反馈,请随时在下面留下评论。谢谢。

jQuery UI 1.8.8

发布日期 作者

jQuery UI 1.8 的第八个维护版本发布了。此更新包含针对 Position、Accordion、Autocomplete、Button、Datepicker、Dialog 和 Effects 的错误修复。有关更改的完整列表,请参阅 变更日志。您可以从此处下载它

下载

文件下载

Svn (包含与压缩包中相同的最终文件,其中 @VERSION 已被替换为 1.8.8,包含所有主题)

Git (包含预构建文件,其中 @VERSION 尚未替换为 1.8.8,仅包含基础主题)

Google Ajax 库 API(CDN)

Microsoft Ajax CDN (CDN)

自定义下载生成器

新功能

日期选择器

日期选择器小部件现在支持马拉雅拉姆语的本地化。

变更日志

请查看 1.8.8 升级指南,了解从 1.8.7 升级时可能影响您的更改列表。有关此版本中包含内容的完整详细信息,请参阅 1.8.8 变更日志

致谢

感谢所有帮助发布此版本的人员,特别是:aaronpeterson、Alex Dovenmuehle、calvin、chyi1235、Corkup、danlash、draenor、hypnotoad、ji1337、Kevin Dalman、m4olivei、Mario Visic、mjpowersjr、Saji、Scott González、Tony Ross、urkle。

评论

注意:**请勿使用此博客文章的评论部分报告错误。** 应在 jQuery UI 错误追踪器 中提交错误报告,支持问题应发布在 jQuery 论坛 上。

如果您对我们发布 jQuery UI 1.8 的第八个维护版本有任何反馈,请随时在下面留下评论。谢谢。

jQuery UI 1.8.7

发布日期 作者

jQuery UI 1.8 的第七个维护版本发布了。除了正式支持 jQuery 1.4.4 之外,此更新还为 Position、Draggable、Sortable、Autocomplete、Button、Datepicker、Dialog、Progressbar、Slider、Tabs 和 Effects 带来了错误修复和增强。有关更改的完整列表,请参阅 变更日志。您可以从此处下载它

下载

文件下载

Svn (包含与压缩包中相同的最终文件,其中 @VERSION 已被替换为 1.8.7,包含所有主题)

Git (包含预构建文件,其中 @VERSION 尚未替换为 1.8.7,仅包含基础主题)

Google Ajax 库 API(CDN)

自定义下载生成器

新功能

在这个版本中,我们添加了对 jQuery 1.4.4 的支持。

按钮

buttonset 小部件现在支持 items 选项来定义要转换为按钮的元素。

日期选择器

datepicker 小部件现在支持罗曼什语本地化。

进度条

这是进度条小部件连续第二个版本更新!现在您可以通过新的 max 选项指定最大值。

变更日志

请参阅 1.8.7 升级指南,了解从 1.8.6 升级时可能影响您的更改列表。有关此版本中包含的全部详细信息,请参阅 1.8.7 变更日志

致谢

感谢所有参与此版本的人,特别是:1730wang、AccessDenied、Alex Dovenmuehle、amodlin、andrew_、anonymous、awgy、azran1981、c_schmitz、dalexandre、dblood、DoctorArnar、doerwalter、dsargent、fetchak、fracmak、gethinw、ghusta、goldy、guoicq、Heiko Henning、imefisto、InAme、inukshuk、israelrios、J. Ryan Stinnett、james.a.rosen@gmail.com、jamiejag、jao、Jay Merrifield、jazzido、Jean-Francois Remy、Jeff Roush、jeffsmith、jessicah、joern.zaefferer、jryans、ju ergen.furrer、jzaefferer、k.robinson、kbwood、kevin.wells.iq4bis、Khaled AlHourani、Kyle Wilkinson、kzamir、mal、Marian Rudzynski、mayoulti、mbarkhau、michael.heuberger、mlooise、nmb.ten、perlpunk、pheiberg、Phillip Barnes、poplix、rambat、rdworth、rlandrum、Ronin、rosieks、Rwhitbeck、Sachemo7、saks、saksmlz、Scott González、seb835、sixhead、skeetergraphics、Stéphane Raimbault、sz_zoly7、tedclarkjr、TheBlaze、tombigel、vosechu、Wallbanger、WanderingZombie。

评论

注意:**请勿使用此博客文章的评论部分报告错误。** 应在 jQuery UI 错误追踪器 中提交错误报告,支持问题应发布在 jQuery 论坛 上。

如果您对我们进行 jQuery UI 1.8 的第七个维护版本有任何反馈,请随时在下方留言。谢谢。

定位 API 重构

发布日期 作者

继续进行 API 重构,我们计划对定位实用程序进行一些更改。

API 重构

将 offset 选项合并到 my 和 at 选项中
offset 选项将被移除,取而代之的是将 offset 作为 my 或 at 选项的一部分。
例如,您当前的操作方式如下

$( "#elem" ).position({
    my: "left top",
    at: "left top",
    of: "#otherElem",
    offset: "50 20"
});

现在您将执行以下操作

$( "#elem" ).position({
    my: "left+50 top+20",
    at: "left top",
    of: "#otherElem"
});

无论您是在 my 还是 at 选项中包含 offset,offset 始终会根据最终位置进行调整,就像当前的 offset 选项一样。我们还计划支持百分比,以便您可以根据元素的宽度或高度的百分比来偏移元素。如果在 my 选项中指定百分比,则百分比将基于要定位的元素的大小。如果在 at 选项中指定百分比,则百分比将基于要定位的元素的大小。
例如,要将元素放置在屏幕下方 1/4 的位置并水平居中,您可以执行以下操作

$( "#elem" ).position({
    my: "center top",
    at: "center top+25%",
    of: window
});

要将元素定位以便只有它的左侧 10% 可见,您可以执行以下操作

$( "#elem" ).position({
    my: "left-10% center",
    at: "right center",
    of: window
});

更好的碰撞处理
当前,碰撞处理相当简单。如果您启用碰撞(通过指定 fit 或 flip),则插件将检测是否存在碰撞,如果存在,它将相应地移动元素。但是,根据元素的大小,这种调整实际上可能导致更少的元素可见。我们计划让碰撞处理更智能,以便它永远不会让定位变得更糟。API 不会有任何变化,只是对碰撞的处理更好了。

反馈

我们希望听到您对这些更改的反馈。我们希望确保在最终确定和实施这些更改之前解决社区可能遇到的任何问题。如果您有任何反馈,请发布在 相关的论坛帖子 上。谢谢。

进度条 API 重构

发布日期 作者

之前所说,jQuery UI 正在进行 API 重构,这将缩减 API 的规模,以提供更稳定、更易于学习和使用的代码库。这篇文章列出了进度条小部件的拟议更改的详细信息以及每个更改背后的原因。

API 重构

添加对不确定进度条的支持。
我们之前说过,不确定进度条应该是一个单独的小部件。但是,有一个很常见的用例,您可能希望在知道实际进度之前开始提供有关任务已启动的反馈。在这种情况下,您可能希望先使用不确定进度条,并在获得足够的信息以提供详细信息后立即切换到确定进度条。为了支持这一点,我们将允许 value 选项设置为 false 以指示进度条应该是无确定性的。

从不确定状态切换到确定状态看起来像这样

$( "#progressbar" ).progressbar({
    value: false
});

// later when you find out more information
$( "#progressbar" ).progressbar( "option", {
    value: 15,
    max: 250
});

反馈

我们希望听到您对这些更改的反馈。我们希望确保在最终确定和实施这些更改之前解决社区可能遇到的任何问题。如果您有任何反馈,请发布在 相关的论坛帖子 上。谢谢。

手风琴 API 重构

发布日期 作者

jQuery UI 正在进行 API 重构,这将缩减 API 的规模,以提供更稳定、更易于学习和使用的代码库。在接下来的几周内,我们将发布拟议的更改,以收集社区的反馈。我们的目标是在 1.9 版本中同时支持旧版(当前)和新版(拟议)API,然后在 2.0 版本中删除对旧版 API 的支持。这篇文章列出了手风琴小部件的拟议更改的详细信息以及每个更改背后的原因。

API 重构

移除 navigation 和 navigationFilter 选项。
navigation 相关的选项将被移除,取而代之的是在初始化期间设置 active 选项。内置的 navigation 过滤器并不总是说得通,并且默认情况下已关闭。我们计划添加一个演示,展示如何实现当前的导航功能,以及如何使用 cookie 来存储活动面板。

将 autoHeight、fillSpace 和 clearStyle 选项合并到一个名为 fixedHeight 的新选项中
autoHeight、fillSpace 和 clearStyle 选项都处理类似的问题,因此不能一起使用。对同一个功能(面板的高度应该如何)使用三个选项会创建一个复杂且令人困惑的 API。这三个选项将被一个名为 fixedHeight 的布尔选项取代。当设置为 true(默认值)时,所有面板将具有相同的高度。如果手风琴的高度为“auto”,则所有面板将与最高的面板一样高(相当于 autoHeight: true)。如果手风琴具有显式高度,则所有面板将根据该高度进行大小调整(相当于 fillSpace: true)。当 fixedHeight 设置为 false 时,不会对面板的高度进行任何计算,它们将根据其内容进行大小调整(相当于 clearStyle: true)。

将 icon.headerSelected 选项重命名为 icon.activeHeader
对该选项进行重命名是为了确保在手风琴(处理活动面板时的 active 与 selected)和整个 jQuery UI 套件中的一致性。

移除 activate 方法
activate 方法将被移除,取而代之的是更新 active 选项。activate 方法的包含并没有简化手风琴的使用,因此没有必要。

将 resize 方法重命名为 refresh
对该方法进行重命名是为了确保在整个 jQuery UI 套件中的一致性。但是,这将继续只处理大小更改。我们确实计划在将来支持添加/移除面板。

将 changestart 事件重命名为 beforeactivate
为了保持一致性,该事件将被重命名,无论是在 Accordion 内部(处理活动面板时使用 activate 而不是 change),还是在整个 jQuery UI 套件中。

将 change 事件重命名为 activate
为了保持一致性,该事件将被重命名,无论是在 Accordion 内部(处理活动面板时使用 activate 而不是 change),还是在整个 jQuery UI 套件中。

添加 .ui-accordion-heading 类
目前每个面板的标题都没有添加类。这会导致样式表使用 ` .ui-accordion-header a` 进行样式设置,这使得在标题中添加额外的锚点变得困难。为了解决这个问题,我们将向每个标题的第一个子元素添加一个类,并使用新的类进行样式设置。

反馈

我们非常乐意听到您对这些更改的反馈意见。在最终确定和实施这些更改之前,我们希望确保解决社区可能遇到的任何问题。如果您有任何反馈意见,请在相关论坛帖子中发表。谢谢。

jQuery UI 1.9 里程碑 3 - 旋转器

发布日期 作者

jQuery UI 1.9 的第三个里程碑版本已经发布,其中包含正在积极开发的新旋转器小部件。它还包括自第二个里程碑版本以来对工具提示和小部件进行的更新。

什么是里程碑版本?

里程碑版本使您可以更轻松地试用 jQuery UI 的最新开发代码,而不必从 GitHub 中检出代码。

使用里程碑版本,您可以试用已经相当成熟的新小部件(尽管还没有最终完成),并根据具有特定版本号的发布代码提供反馈。

注意:API 可能会发生变化,因为代码仍在积极开发中。

旋转器

我们非常乐意听到您对我们新旋转器小部件的反馈意见,以帮助我们为 1.9 的最终版本做好准备。API 已经很完善了,所以如果您现在就开始使用它,迁移到 1.9 最终版本应该非常容易。

旋转器是一个简单的小部件,它允许用户增加或减少当前文本框的值,而无需手动输入。增量不必是整数 - 它们可以设置为小数 (0.1) 或每次点击的大增量 (5)。

该小部件使用jquery-global 插件进行数字的全球化,包括十进制数和货币值的解析和格式化。这使得它从一开始就能够支持数百种文化。

演示:货币

演示

在我们的实时代码视图网站上,在菜单分支中尝试一些最新的演示,view.jqueryui.com

下载

您可以将 jQuery UI 1.9 里程碑 3 - 旋转器 版本下载为 zip 文件或通过 git 获取

文件下载

Git

如何提供反馈

wiki 页面

要帮助设计和开发旋转器小部件,请访问我们开发和规划维基上的旋转器页面

论坛

如果 wiki 页面上的评论部分没有足够的空间用于您的反馈,请发布到 开发 jQuery UI 论坛 并标记您的帖子

如何贡献代码

如果您对旋转器有代码更改,请在GitHub 上分叉 jQuery UI,提交到spinner 分支,并提交拉取请求。

如果您不熟悉 git 或 GitHub,请查看我们的指南:如何向 jQuery UI 提交修复 – 简单方法

评论

注意:请不要使用此博客文章的评论部分来反馈旋转器小部件。 这些讨论应该在维基页面和论坛上进行(见上面的“如何提供反馈”)。

如果您对我们发布第三个里程碑版本有任何反馈意见,请随时在下面留言。谢谢。

jQuery UI 1.8.6

发布日期 作者

jQuery UI 1.8 的第六个维护版本已经发布。除了对 jQuery 1.4.3 的官方支持外,此更新还为 jQuery UI Core、小部件工厂、鼠标小部件和位置实用程序以及手风琴、自动完成、按钮、日期选择器、对话框、进度条和小部件带来了错误修复和增强功能。有关更改的完整列表,请参阅变更日志。您可以在此处下载它

下载

文件下载

Svn(包含 zip 文件中的最终文件,其中 @VERSION 已被替换为 1.8.6,所有主题)

Git(包含预构建文件,其中 @VERSION 尚未被替换为 1.8.6,仅包含基本主题)

Google Ajax 库 API(CDN)

自定义下载生成器

新功能

在此版本中,我们添加了对 jQuery 1.4.3 和 IE 9 的支持。我们还为所有小部件和交互添加了一些新功能,这些功能列在下面的“小部件工厂”下。

小部件工厂

通过小部件工厂创建的所有小部件在创建每个实例时都会触发一个 create 事件。例如,当通过 `$( "#dialog" ).dialog()` 创建一个对话框时,您可以绑定到 `dialogcreate` 事件或指定一个 `create` 回调函数。

您现在可以指定用于收集选项的额外逻辑,这些逻辑应该优先于默认值,但不优先于初始化时传递的选项。在此版本之前,小部件工厂内置支持使用元数据插件来收集此类选项。从 1.8.6 开始,您现在可以通过在小部件中创建一个 `_getCreateOptions()` 方法来指定您想要的任何逻辑;默认方法使用元数据插件来保持向后兼容性。

通过 `option` 方法设置选项时,完整的选项集将传递给一个称为 `_setOptions` 的新方法。默认实现只是将每个单独的选项传递给现有的 `_setOption` 方法。但是,您可能希望覆盖 `_setOptions` 以批处理更新。查看对话框小部件,了解批处理更新的一个很好的示例。

日期选择器

日期选择器小部件现在支持两种额外的本地化:加利西亚语和葡萄牙语。

进度条

进度条终于得到了更新,添加了一个新的回调函数。现在有一个 `complete` 事件,当值达到 100% 的最大值时会触发。

效果

颜色动画现在支持 borderColor 简写属性,用于使用单个属性为所有四边进行动画。

变更日志

有关从 1.8.5 升级时可能影响您的更改列表,请参阅1.8.6 升级指南。有关此版本中包含内容的完整详细信息,请参阅1.8.6 变更日志

致谢

感谢所有帮助发布此版本的人,特别是:aebond、Alkarex、AzaToth、bakatron、benjamin.neau、bgrinstead、bjoernhaeuser@gmail.com、boldewyn、burnrbr、can3p、chrisbarr、cim、clewis、Daniel Steigerwald、dejannenov、didroe、Dmitry Petrov、dziastinux、ehynds、enti、ergec、gavtaylor、itpretty、Ján Suchal、jenters、jitter、jmiller、joern.zaefferer、John Firebaugh、Jorge Barreiro、kbwood、kharpoh、Kryal、lfaustino、Lim Chee Aun、m157y、MechanisM、oov、phallstrom、PKBurgess1983、qpi、quaff、reidres、Richard D. Worth、rickgnyc、roncli、Rwhitbeck、Scott González、seb835、squix、stakach、Tanguy、unt01d、vaporetto、watanabe、waveduke、wiibaker、wprice、xirzec。

评论

注意:请不要使用此博客文章的评论部分来报告错误。 错误报告应在jQuery UI 错误跟踪器中提交,支持问题应在jQuery 论坛中发布。

如果您对我们发布 jQuery UI 1.8 的第六个维护版本有任何反馈意见,请随时在下面留言。谢谢。