YUI 2.7.0 Released

By YUI TeamFebruary 18th, 2009

The YUI development team is pleased to release version 2.7.0 of the YUI Library. You can download YUI 2.7.0 from YUILibrary.com or configure your implementation using the YUI Configurator.

Version 2.7.0 introduces a new StyleSheet component, graduates three components out of “beta”, improves support for the upcoming release of IE8, includes over 180 bug fixes and enhancements, and ships with more than 300 functional examples.

Introducing StyleSheet

The YUI StyleSheet Utility, developed by YUI engineer Luke Smith, provides a means to optimize the application of a style or changes to existing styles across multiple elements without incurring the cost of a page reflow for each element. Using the benefits of dynamic CSS, the StyleSheet Utility allows the creation of new stylesheets and changes to existing stylesheets that can be applied to multiple elements without the need to loop through the elements in the DOM, thus maintaining an optimal experience for the end user of the page.

Updates to Existing Components

Charts Enhancements

Enhancements to Charts Control include rotated labels, zero-gridline styling, and enhanced series styling

The Charts Control benefits from several new additions in the 2.7.0 release made by Dwight “Tripp” Bridges. Charts can now be specified with rotated axis labels and titles. New series styles have been added which allow more control over the color and alpha settings of lines, borders, and fills for the series markers. A zeroGridline style has been added to be able to draw attention to a chart’s zero gridline when it appears beyond the origin. Several bugs have been addressed in the TimeAxis class, resulting in more accurate majorUnit and minorUnit calculations.

Additions to the Dom Collection

Matt Sweeney has been hard at work in both the 3.x and 2.x code lines of YUI. As an enhancement to 2.7.0, the work done in 3.x on getXY() and setXY() has been integrated into the Dom Collection for this release. The properties height and width are now available in Region; the get() method now supports Element instances; and several new methods have been added for this release, including getComputedStyle(), getElementBy(), setAttribute(), and getAttribute().

Container Changes

The Container family of components has received a couple notable updates from YUI’s own Satyen Desai. Dialog now supports sending post data along with any data mined from the form for “async” post requests. It also provides the Connection object as the first argument to subscribers of the “asyncSubmit” event. Overlay’s “fixedcenter” support has been enhanced with the ability to optionally disable centering on scroll when the window size is not large enough to fully contain the Overlay. The Container README file included in the release contains full details on these items and a full list of changes for 2.7.0.

Updated Treeview

Prolific YUI community member and developer Satyam has contributed a long list of enhancements and bug fixes to YUI’s TreeView Control for this release. Node highlighting and selection has been added, including single and multi-node selection support as well as upward and downward propagation. There have been significant improvements to focus and event handling. The parsing in buildTreeFromMarkup() has been updated to read an HTML attribute called “yuiConfig” which can override any property read from the markup. It assembles an object literal that is then passed to buildTreeFromObject(). Several class names have been added to TreeView in order to make it easier to identify elements in the generated HTML. This is only a small sample of the changes to this component for 2.7.0. Refer to the TreeView README file for the full summary of changes in this release.

Internet Explorer 8 Support

The YUI team has put a great deal of effort into testing the library components with the pre-release versions of the new IE8 browser. There have been several changes made in the library to provide better compatibility with the new browser. Please note, at the time of the 2.7.0 release, IE8 is still a release candidate. Should any significant issues be found when IE8 is officially launched, we will work to post a timely YUI update.

Promotion from Beta Status

The following components have been promoted out of “beta” status in the YUI 2.7.0 release:

Over 180 Enhancements and Bug Fixes

The information included above describes just a few of the updates in 2.7.0. Refer to the README digest or the individual README files for full details on changes in this release. YUI 2.7.0 also addresses over 180 defect reports and enhancement requests that have been submitted by the development community. A comprehensive change log has been provided for your reference.


The YUI Library has grown in functionality as well as quality as a result of the feedback and suggestions we get from all of you in the community. We hope you will enjoy using the 2.7.0 release of YUI, and we look forward to your continued feedback on the YUI mailing list and forum. Please continue to log any enhancement requests you have for the library as well as defects you run into in your development at our new ticket repositories on YUILibrary.com.

For all of your feedback and support, I extend a big thank you to everyone in the YUI community on behalf of the entire development team: Adam Moore, Dav Glass, Eric Miraglia, Jenny Han Donnelly, Luke Smith, Matt Sweeney, Nate Koechley, Satyen Desai, Thomas Sha, and Todd Kloots; and contributors: Allen Rabinovich, Caridy Patiño, Dwight “Tripp” Bridges, Gopal Venkatesan, Julien Lecomte, Matt Mlinac, Nicholas C. Zakas, Philip Tellis, and Satyam.


  1. Very, very cool… thank you YUI developers.

    (can anyone point me to what limitation of safari prevents the use of cursor keys with datatable ?)


  2. Dammit – we only just upgraded to 2.6.0 ;-)

    Congratulations on the new release!

  3. You guys rock! Thank you!

  4. Congratulations on another great release and thanks for all the hard work your team does. I look forward to incorporating the new features.

  5. Wonderful,

    A big “Thank You” to the YUI-team. Guys, You’re doing a great job.

  6. Seems like the new StyleSheet utility is missing from the zip.

  7. Great job, Tripp. Excellent additions to the charts!

  8. @roger: https://bugs.webkit.org/show_bug.cgi?id=7138

    The good news is that it is fixed in the WebKit nightly build.

  9. @Mike —

    Yep, our mistake. As Adam noted in the forums (http://yuilibrary.com/forum/viewtopic.php?p=341#p341 ), we’ve posted an updated zip:



  10. Great work guys! I’ve been seeing all this recent activity on the 2.x code branch on GitHub.

    Guessing now you guys are going to switch gears to YUI 3.0 beta :-P

  11. @adam: thanks for the pointer, really appreciated.

  12. Can we just do a search for “2.6.0” and replace with “2.7.0”, or is there more to it than that?

  13. I love you guys! YUI is fantastic

  14. Important: this 2.7.0 release isn’t hosted on Google’s Ajax googleapis and breaks the hosting script when google is selected:

    When will this release be added to the google apis?


  15. I’m with Greg Raven. I replaced “2.6.0” with “2.7.0” and things broke. Now what? :-)

  16. @Greg Raven and @Rocketman: prior to 2.7.0, the file names reflected the -beta or -experimental status of the component. We removed this, largely to make this type of upgrade easier in the future. Removing references to -beta and -experimental may fix your issue. The easiest way to get an optimized list of dependencies for a release is to use the YUI dependency configurator:


    @Yvo Schapp: Google has added the 2.7.0 release to their CDN.

  17. Just downloaded the safari 4 beta; the bug i referred to has been fixed. YAY!

  18. Adrian Kalbarczyk said:
    March 9, 2009 at 4:50 pm

    I did the stylesheet manipulating object some time ago but I never thought that this functionality is usable for other project than mine. It’s cool that I don’t have to maintain this code any more!

    I used this to give a user ability to create in real time his own skin for site and save it as CSS. Maybe some example in StyleSheet’s examples covering that is good idea?

  19. I would like to complain. Not about YUI, but about the quality of the list of changes.

    The detailed changelog for 2.7.0 says “uploader: no changes”. Now, I just diff-ed the JS file and the swf file, and both have changed. The interface even received a new parameter (forceTransparent {Boolean})!

    There were quite a few changes in uploader, but NO TRACE in the changelog or anywhere, not here on the website, not in the local README. Diff shows appr. 67 lines removed and 55 added for the uploader.js file alone. This, and the new parameter, surely shouldn’t register as “no change”???

  20. @Michael,

    Apologies for the oversight. The Uploader readme file has been updated and is available in the uploader folder in git. The following summarizes the changes to uploader in YUI 2.7.0:


    * Bug fixes
    – All global variables were converted to member variables of YAHOO
    – Changes in how the specific instances of uploader are tracked when events are dispatched from Flash (to avoid initialization race conditions particularly visible in Firefox 3 with AdBlock)

    * New optional forceTransparent argument was added to the Uploader constructor: if true, it forces Flash to render the Flash app as transparent even if it’s running in the “button” mode (for use with non-rectangular PNG buttons with transparency).

  21. [...] been a big week in the YUI world, with YUI 2.7.0 being released and our third birthday coming up. But, as usual, most of the news is coming from the [...]