jQuery UI 团队很高兴地宣布 jQuery UI 1.8 的最终版本发布,其中包含 5 个新插件、1 个新效果,以及数百个错误修复和改进。
我们非常努力地使 jQuery UI 更轻量级、更模块化,并拥有更灵活、更可扩展的核心。现在,无论您使用 jQuery UI Widget 工厂、jQuery UI CSS 框架还是两者兼而有之,构建自己的小部件或扩展现有小部件都变得更加容易。此版本是跨越 9 个多月的集体努力,由数百位开发人员、设计师、测试人员和用户共同贡献。感谢您对我们所有帮助和支持。我们甚至会在这篇文章的最后给出个人姓名(我们会说出名字!)
代码、主题、演示和文档现在已在 jqueryui.com、jQuery UI 下载生成器、ThemeRoller 和 Google 的 AJAX 库 API 上上线。
注意:此版本中存在重大(在某些情况下甚至是破坏性的)更改。如果您当前正在使用或开发 jQuery UI 插件,请务必查阅 变更日志 和 升级指南,以详细了解这些更改及其影响。
下载 jQuery UI 1.8
我想要全部
我知道我想要什么
我想要一直使用它
jQuery UI 1.8 中有哪些新功能?
此版本添加了两个新实用程序、两个新小部件、一个升级的 Widget 工厂和一个更模块化的核心。有关 jQuery UI 1.7.2 和 jQuery UI 1.8 之间所有更改的完整列表,请参阅 1.8 变更日志。以下总结了一些较大且更明显的更改。
Position 实用程序
将任何元素相对于任何其他元素进行定位,甚至相对于窗口或鼠标进行定位。秉承“少写代码,做更多事”的宗旨,操作起来非常简单,只需选择要定位的元素,并说明其哪个部分应相对于另一个元素的哪个部分进行定位即可。就是这样。
Button 小部件
按钮小部件从任何您可以用作原生按钮的可想象元素创建可主题化按钮。逐步增强一路走到底。现在您的 <button> 将看起来像您的 <input type=”submit”> 将看起来像您的 <a class=”button”>。我们更新了具有按钮的 jQuery UI 小部件,例如对话框,以便在您选择包含它时使用按钮插件。否则,它们将保持为原生按钮元素。再次感谢 PE,这尽可能地不显眼。感谢 Filament Group 找出如何做到这一点,感谢 Jörn Zaefferer 让它成为现实。当然,还要感谢整个社区在早期设计/开发以及后期开发/测试期间提供反馈。我们很高兴拥有漂亮的表单元素,按钮是第一步。
自动完成小部件
现在,您可以使任何文本输入弹出菜单,以帮助用户完成文本输入或搜索框,提供建议或允许的值。自动完成是根据流行的 Jörn Zaefferer 的自动完成进行设计和构建的。与按钮小部件一样,我们已尽可能将 API 保持到最低限度,同时提供必要的钩子,以根据您的需求进行自定义。例如,您可以使用 source 选项提供静态本地数据,也可以提供回调函数作为数据源,该函数可以处理通过 Ajax 从服务器获取数据。单一选项,重载。这是我们今后编写和重构所有小部件的新方式,我们很高兴听到人们的想法。这是一个相当大的变化,但应该保持库精简,同时尽可能灵活和强大。请参阅自动完成演示以了解更多信息。
这是另一个新的插件,它的实现工作很大程度上要归功于 Jörn Zaefferer,API 设计则由 Jörn Zaefferer、Scott González 和 Richard D. Worth 完成。Filament Group 一如既往地为交互设计和静态标记以及 CSS 引用提供了帮助。
新的小部件工厂
Scott González 和 Jörn Zaefferer 在社区的帮助下,在这个版本中完成了对 jQuery UI 小部件工厂的重大更新。这些更改使创建和扩展您自己的小部件、扩展我们的小部件或扩展其他人创建的小部件变得更加容易。
注意:其中一些是重大更改,需要升级才能使用构建在 1.7 小部件工厂上的插件。有关这些更改及其影响的摘要,请参阅升级指南中的小部件工厂部分。
有关这些更改以及我们为何如此兴奋的另一个摘要,请参阅 David Petersen 撰写的这篇博文。感谢 David。
jQuery UI Core 缩小了 71%
最新版本的 jQuery UI Core 缩小了 71%。这种优化主要是通过提取已经模块化但捆绑的组件鼠标和小部件来实现的。
新的鼠标插件文件使 jQuery UI 平均缩小了 14%
鼠标插件并不新鲜,但这个版本将它移到了自己的文件 jquery.ui.mouse.js 中,之前它是在 jQuery UI Core 中。这意味着不依赖鼠标插件但之前包含了 jQuery UI Core 的 jQuery UI 插件现在包含的未使用代码更少,平均文件大小总体提高了 14%。这仅仅是平均值。有些改进将高达 36%。
文件重命名
所有 .js 和 .css 文件都已重命名为以 jquery.ui. 为前缀,而不是 ui. 为前缀。这样做是为了与 jQuery 插件命名指南保持一致,并为正在开发中的一些工具做好准备,这些工具将允许轻松创建包含 jQuery 插件以及 jQuery UI 插件的自定义构建。
注意:如果您编写自己的 jQuery 插件,即使它是基于 jQuery UI 小部件工厂,请遵循 jQuery 插件命名指南“jquery.{plugin-name}.js”,而不是“jquery.ui.{plugin-name}.js”。这将使区分官方 jQuery UI 库中包含的和不包含的 jQuery 插件变得更加容易。同样适用于小部件命名空间和 CSS 类命名空间,当然,在使用通用 jQuery UI CSS 框架类时除外。例如,如果您编写了一个名为 foo 的小部件,则该文件应命名为 jquery.foo.js,而不是 jquery.ui.foo.js。小部件可以使用 ui-widget、ui-widget-content、ui-state-active 等类(请参阅主题文档以获取完整列表),但不要使用 ui-foo 和其他 ui-foo-* 类名,因为这些类名将保留用于 jQuery UI 库中的 foo 小部件,或 jQuery UI Foo 小部件,其文件名将为 jquery.ui.foo.js。
最新 jQuery 1.4.2
jQuery UI 1.8 包含最新版本的 jQuery,1.4.2。它很快。
如何升级?
- 下载 jQuery UI 1.8(请参阅上面的链接)
- 如果您要从 1.7 升级到 1.8,请务必遵循最新的升级指南。如果您是从更旧的版本升级,您将需要首先遵循旧的1.7 升级指南。
- 最后,要了解 jQuery UI 在 1.8 中的每个部分都得到了多大的改进,您可以查看变更日志,其中包含各种详细内容。如果您最喜欢的错误尚未修复,请务必在我们的错误跟踪器或新的开发 jQuery UI 论坛中告知我们。
jQuery UI 1.7 呢?
jQuery UI 1.8 正式的发布使其成为 jQuery UI 的最新稳定版本。这使得之前的版本 1.7.2 成为遗留版本。jQuery UI 项目同时支持最新的稳定版本和一个遗留版本。因此,从现在开始,jQuery UI 下载构建器和 ThemeRoller 只包含这些版本。所有早于 1.7.2 的版本不再受支持,所有用户都鼓励尽快升级到 1.8。
在尝试将遗留的 jQuery UI 1.7.2 与最新的 jQuery 1.4.2 一起使用时,发现了一些问题。这些版本不兼容。遗留的 jQuery UI 1.7.2 仅与 jQuery 1.3.2 兼容。即将发布的 jQuery UI 1.7.3 版本将使其与最新的 jQuery 1.4.2 兼容。这将是最终的 1.7.x 版本,冻结此分支。
感谢
感谢所有帮助发布此版本的人,特别是:3li、4pcbr、abaumhau、aesnn、aflynt、ajpiano、akaihola、akshell、alab1001101、albertvo、alexch、allanm051、andreas、Andrew Powell、andrew.sharpe.7.9、Aneon、antonello.pasella、aron.duby、arunpjohny、ashish879、ask、attaboy、audreyt、AzaToth、babaker、BenBlank、bhornseth、bkrausz、bman654、BMCouto、bmherold、bobbykjack、bobmajdakjr、bohdan.ganicky、bornemix、Brant Burnett、brostbeef、burhan、Ca-Phun Ung、caesar2k、carltongibson、cfrerebeau、chaos、Chealer、Chi Cheng、chrisbarr、cjwilks、coeamyd、colinclark、conkey2、crankharder、crexland、cupdike、cyberdaz36、d.wachss、d3r1v3d、dantman、danw、darkprisma、david.brooks、davidascher、davidb、defenestrator、Demphest、dhlavaty、diogobaeder、DiRN、divide、dluk、dmethvin、dmfontz、dmuir、dohsun、doublerebel、dougneiner、doutu、dpeterman、dprunier、DRHansen、dtetto、duelli、dunghopper、ecaron、eib、epascarello、epiraux、erikharrison、ethan、FDisk、FelipeMorais、fgTodd、Flany、FreakCERS、geki00、george.adamson、glipman、gotmikhail、grabanski、graemeworthy、GreyCells、guile、haayman、hatapitk、idlesign、igor.morozov、Infarinato、itfische、ivanko、jabbott7、JBeckton、jdillmann、jeffgran、jollytoad、julian.jelfs、Jörn Zaefferer、kae、ke4roh、Keith Wood、kevin.wells、klarkin、Klaus Hartl、kswedberg、lisaj、lnostdal、lunchtimemama、L_K_W、m4olivei、macarthy、Maggie Costello Wachs、marcoos、margustiru、martinkeimel、Matty、mawcs、mconway、mdiaz、menteb、mesoconcepts、mg、MikaJ、mikecapp、mikehostetler、Miroku_87、mkemmerling、mkornblum、moveax、MugeSo、mulhoon、mvermilion、neilski、nikolae、NJBR、nodster、ntoniazzi、obrie、patrick、Paul Bakaus、quasipickle、qwerty、ramaboo、raszi、rbrackett、remi、rgluga、ricardolopezrey、Richard Worth、riegens、rnbguru、RobARichardson、rsyring、Rwhitbeck、sam、Sancus、sc0rchin、SCCY、Scott González、Scott Jehl、sdavis、sebbacon、Sebmaster、seph429、sgorski、shartley、sherington、shuckster、slobo、smadep、snobo、sonu27、sosensible、spiralni、stakach、StevenBlack、TaeVjQuery、tan、Tgr、th3br41n、theojapa、thetoolman、tibi70、timolastfm、togis、tomas、triblondon、trixta、uggedal、urkle、veronica、viraj.kanwade、vmx、vrn_shan、wakamolee、wewals、whydream、wichert、wimvl、Wolfjourn、xorax、xover、yourcelf、ZaDarkSide、ZeroMD、zeta、Zidane