jQuery UI 1.8.7

Posted on by

The seventh maintenance release for jQuery UI 1.8 is out. Along with official support for jQuery 1.4.4, this update brings bug fixes and enhancements for the Position, Draggable, Sortable, Autocomplete, Button, Datepicker, Dialog, Progressbar, Slider, Tabs and Effects. For the full list of changes, see the changelog. You can download it here:

Download

File Downloads

Svn (contains final files as they are in the zip, with @VERSION replaced with 1.8.7, all themes)

Git (contains pre-build files, with @VERSION not yet replaced with 1.8.7, base theme only)

Google Ajax Libraries API (CDN)

Custom Download Builder

New Features

In this release, we’ve added support for jQuery 1.4.4.

Button

The buttonset widget now supports an items option to define which elements to convert to buttons.

Datepicker

The datepicker widget now has support for the Rhaeto-Romanic localization.

Progressbar

For the second release in a row, the progressbar widget has received an update! You can now specify a max value via the new max option.

Changelog

See the 1.8.7 Upgrade Guide for a list of changes that may affect you when upgrading from 1.8.6. For full details on what’s included in this release see the 1.8.7 Changelog.

Thanks

Thanks to all who helped with this release, specifically: 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, juergen.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.

Comments

Note: please do NOT use the comments section of this blog post for reporting bugs. Bug reports should be filed in the jQuery UI Bug Tracker and support questions should be posted on the jQuery Forum.

If you have feedback on us doing our seventh maintenance release for jQuery UI 1.8, feel free to leave a comment below. Thank you.

Position API Redesign

Posted on by

Continuing with the API redesign, we have some changes planned for the Position utility.

API Redesign

Merge offset option into the my and at options
The offset option will be removed in favor of including the offset as part of the my or at options.
For example, while you would currently do:

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

You would now do:

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

Regardless of whether you include the offset in the my or at option, the offset will always adjust based on the final position, just like the offset option currently does. We also plan on supporting percentages, so you can offset the element based on a percent of its width or height. If you specify a percentage in the my option, then the percentage will be based on the size of the element being positioned. If you specify a percentage in the at option, then the percentage will be based on the size of the element being positioned against.
For example, to place an element 1/4 of the way down the screen and horizontally centered, you could do:

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

And to position an element so that only the left 10% of it is visible, you could do:

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

Better collision handling
Currently the collision handling is fairly simple. If you enable collision (by specifying fit or flip) then the plugin will detect if there is a collision and if there is, it will move the element accordingly. However, depending on the size of the element, this adjustment may actually cause even less of the element to be visible. We plan on making the collision handling smarter so that it will never make the positioning worse. There will be no change in the API, just better handling for collisions.

Feedback

We’d love to hear your feedback on these changes. We want to make sure we address any issues the community may have before we finalize and implement these changes. If you have any feedback, please post it on the related forum post. Thanks.

Progressbar API Redesign

Posted on by

As previously stated, jQuery UI is undergoing an API redesign which will slim down the size of the API in order to provide a more stable codebase that is easier to learn and use. This post lists out the details of the proposed changes for the Progressbar widget along with the reasoning behind each change.

API Redesign

Add support for indeterminate progress bars.
We had previously said that indeterminate progress bars should be a separate widget. However, there is a common enough use case where you may want to start providing feedback about that a task has started before you know the actual progress. In this case you may want to start with an indeterminate progress bar and switch to a determinate progress bar as soon as you have enough information to provide details. In order to support this, we will allow the value option to be set to false to indicate that the progress bar should be indeterminate.

Switching from an indeterminate state to a determinate state would look like this:

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

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

Feedback

We’d love to hear your feedback on these changes. We want to make sure we address any issues the community may have before we finalize and implement these changes. If you have any feedback, please post it on the related forum post. Thanks.