I was quite impressed with the jQuery teams release of jQuery UI; especially by the fact that it's implementation of Sortables was able to cope with div elements that have overflow:true on them. This is something that doesn't work that great in Scriptaculous.
Now unfortunately a colleague has found a major flaw in the Sortables demo of jQuery. It basically does not work. Using Firefox 2.0.0.7, visit ui.jquery.com and then goto "See the Demos", click "Sortables" and you will then see a new lightbox appear. Now try moving one of the list items around - sometimes it will actually be okay at fist, but when dragging a second element the JavaScript errors on the page start shooting up fast with pause - even after releasing the sortable element. When this was discovered I was trying to convince a developer who hadn't used Prototype/Scriptaculous or jQuery before, that they should be using jQuery UI. This didn't win them over unfortunately. I am sure it used to work though so maybe something in the latest build has broken this. The error being thrown is:
this.parentNode has no properties
this.parentNode.removeChild( this )
and is coming from line 1259 of core.js.
The colleague that found this bug in the current release has also tried downloading the demo, and using the current downloadable version of jQuery UI and it works okay for that (although the effects are a little sluggish) which seems odd as looking at the source code on the site and what is downloaded they both appear to be revision 3353. So this means by downloading the markup from the demo, and the jQuery UI download it is somehow behaving differently to how it does on their server. Very strange indeed.
It seems unfair of me to moan about such a bug, but it is a major bug, it basically means that Sortables do not work. Looking at the trac for jQuery there is a ticket raised (see ticket 1679) for this that discuses the issue occurring in Firefox, Internet Explorer 6, and Opera 9. In the Google group for jQuery they also report it being broken in Safari 3. So that covers pretty much every major browser - all of which it's broken in.









