jQuery 1.5 Beta 1 Released

Posted on by

Happy 5th Birthday to jQuery! jQuery was released on January 14th, 2006 today marks its 5th year of development!

To celebrate the occasion we’re releasing the first beta release of jQuery 1.5! We’re planning on having a final release candidate within 10 days and a final release by the end of the month.

We’d also like to announce three new additions to the jQuery core development team: Julian Aubourg, Colin Snover, and Anton Matzneller. All three of them have been major contributors towards the 1.5 release – providing significant code contributions, bug fixes, and triaging. Please take this opportunity to welcome them aboard!

Additionally we’d like to take take this opportunity to thank all the members of the jQuery community that have helped to get this beta release out – especially all the members of the bug triage team.

We want to encourage everyone from the community to try and get involved in contributing back to jQuery core. We’ve set up a full page of information dedicated towards becoming more involved with the team. The team is here and ready to help you help us!

So without further ado – jQuery 1.5 Beta 1!

jQuery 1.5 Beta 1

You can get the code from the jQuery CDN:

You can help us by dropping that code into your existing application and letting us know that if anything no longer works. Please file a bug and be sure to mention that you’re testing against jQuery 1.5 Beta 1.

jQuery 1.5 Beta 1 Change Log

This is a concise change log – full release notes will be coming with the final 1.5 release.

  • Rewrite of the Ajax module by Julian Aubourg. This is the most significant change in this release and brings a number of performance, stability, and feature improvements to $.ajax. More information can be found here #7195
  • Subclassing in jQuery now supported #7901
  • Removed the possibility of expando collisions when using noConflict() (V8 is fast!). The expando string now uses a random number + jQuery version to differentiate between instances of jQuery instead of millisecond clock time. #6842
  • Deduplicated code in $.get and $.post. #7847
  • When a native browser event is bubbling up the DOM, make sure that the correct isDefaultPrevented value is reflected by jQuery’s Event object. #7793
  • No longer cache non-html strings in buildFragment to avoid possible collision with the names of Object methods like toString. Testing shows this may also provide modest performance improvements. #6779
  • Updated cloneCopyEvent so that it does not create superfluous data objects when cloning elements. Exposes a new method, $.hasData, for determining whether or not an object has any data. #7165
  • Use a for loop rather than for/in loop when copying events so that code will work with an augmented Array.prototype. #7809, #7817
  • Fixed fadeIn not working properly with inline elements. #7397
  • Rewrote IE’s clone function to function properly in all known cases. #4386, #5566, #6997
  • Fixed IE breaking when dispatching a ‘submit’ event on plain JS objects. #6398
  • Fixed a regression in 1.4 that caused cache control to be set incorrectly for script transport. #7578
  • Improve performance of get() for negative indices. #5476
  • hasClass, removeClass didn’t work in IE if the attribute contained a carriage return (\r) character. #7673
  • Fix a regresion in 1.4.4 where calling $.fn.data without arguments breaks on non-DOM elements. #7524
  • Fixed memory leaks in IE caused by the custom abort function of $.ajax. #6242
  • Prevent live events from firing on disabled elements in IE. #6911
  • Fixed a regression in 1.4.3 that caused sending a Location object to $.ajax to no longer work. #7531
  • Fixed an issue where some traversal methods performed an unnecessary uniqueness check. #7964
  • We now support being able to specify callbacks to handle specific status codes#4964
  • Fixed an issue where ?? wasn’t supported as a context-insensitive placeholder for the callback name of a JSONP request. #4897
  • Data returned from dataFilter was not being passed to ajax complete() callbacks. We now use the jXHR’s promise interface to get the actual response. #4825
  • We now ensure that buildFragment clones elements properly in all browsers. #6655 and #3879
  • A memory leak caused when binding custom events in IE8 was fixed #7054
  • Lines in form data are now delimited by CRLF when the form is submitted (as recommended by the W3C). #6876
  • Ajax requests now abort on unload such that the event is only bound if the xhr transport is used. #5280
  • We now support =? being detected even if it has been escaped during data serialization. #5812
  • If the user uses the jsonpCallback setting we now automatically set the dataType to ‘jsonp’. #5803
  • The crossDomain option now forces ajax to consider a request as cross-domain, even when its not. This is useful when servers issue redirects to cross-domain urls. #5955
  • $.ajax(this) allowing retries without the recursion errors found in jQuery 1.4.3. #7461
  • Removed a patch for very early versions of Opera 9 that made it impossible to animate values smaller than -10000. #7193
  • ResponseText is now properly propagated for error callbacks. #7868
  • Scripts onload handler passes event as first parameter so statusText is now passed as second argument for aborts. #7865
  • With respect to xhr, setting contentType to false will now prevent the Content-Type header from being sent. #7465
  • When serializing text, we now encode all line breaks as CRLF pairs per the application/x-www-form-urlencoded specification. #6876
  • Fixed a bug with IE6 where certain event handlers were causing inter-page memory leaks. #7762
  • Tests for cross-domain detection now include checking for protocol, hostname and port. #7465
  • Fixed a problem where IDs containing a period would break find() without returning results. #7533
  • The regression with next/adjacent selectors no longer working without the ‘prev’ element has been corrected. #7452
  • Fixed the 1.4.3 regression which prevented the use of attr() on anything but DOM element nodes where the nodeType was 1 #7452, #7500,
  • A bug where including jQuery 1.3.2 resulted in a border on the right-hand side of the screen in IE8 has been fixed. #5575
  • We’ve fixed an issue where adding extra methods to Array.prototype and using jQuery.clone(true) to clone an element resulted in invalid event bindings. #6355
  • Fixed an issue where the nth-child does not handle whitespace correctly in Internet Explorer. #7558
  • We corrected a bug where mouseenter/leave behaved like mouseover/out when using live events #5821
  • Fixed a regression in 1.4.3 where the eq() selector was no longer working with previous and adjacent selectors #7906
  • Updated the documentation on event.currentTarget to address any confusion regarding jQuery.proxy. #7628
  • Fixed an issue where xhr.setRequestHeader(‘Accept’,…) appended the value rather than replacing it. #6230
  • An IE issue where ajax methods failed for content types ending in ‘+xml’ (eg. rss+xml) was fixed. #4958
  • The updates to ajax now allow any request to be aborted. #3442
  • A .slideUp() issue in FireFox 3.6.11 was fixed which previously hid the frameset border and legend but left any content uncovered by another element. #7308
  • We now support cross-browser XML parsing. #6693
  • Fixed a bug where when using dataType:’json’ in the .ajax() method, the data object was undefined in IE6 and 7. #6106
  • Corrected an issue where JSONP calls were not removing the script tag when the call completed. #7418
  • Updated the documentation to reflect the behaviour supported when using delay() with show() if the duration is not specified. #7543

43 thoughts on “jQuery 1.5 Beta 1 Released

  1. OK… where do we get a list of features on the book for 1.5? I know the data and template stuff is ‘suppose’ to be included. Is it happening or is there something else you could tell us also on the way?

  2. William on said:

    im happy templating didnt make it in.. at the moment tmpl is the slowest template means around (im talking bout the latest git version). cant speak for the other “plugins” tho. some pretty cool changes :D way to go team!!!

    congrats to the new members :D

  3. @Kasim: Those are just official plugins, they won’t, necessarily be included into jQuery core.

    @SOSensible: The features added are listed in the above change log – it includes the Ajax rewrite and the new subclassing.

  4. It’d be great to see the “event.special.load” plugin make it into the official load method, since it’s a fix on that method’s checking of cache.

    Otherwise, looks like some great new fixes in 1.5

  5. Frédéric Hewitt on said:

    I do not think Templating, Data Linking and Globalization plugins should be included in the core of jQuery. These 3 plugins are really great, but they are clearly not basic blocks on which to build something else.

    You don’t want them in every project: it’s just waste of resources in many case. This can be a good thing if they find their place in jQuery UI. But they don’t have a place in jQuery itself.

  6. Jeffrey Gilbert on said:

    I just want a templating system that’s officially supported by jquery so i know which direction i can code towards without writing code today that will be outdated tomorrow.

  7. What a nice way to wake up in the morning: notification of a new beta toy! Knowing me, I’ll unwrap it before going back to work… in fact, this news might be enough to get me out of my comfy warm bed and downstairs to the computer…

  8. In Scott Guthrie’s Blog: “Furthermore, in the next major release of jQuery (jQuery 1.5), the jQuery Templates plugin will be included as a standard part of the core jQuery library. This means that the “jQuery Templates” functionality will be included in the jQuery.js file. And it means that developers will be able to take advantage of a standard templating library and syntax when working with jQuery.”

    Is this not true anymore?

  9. Think out loud, do we really need to include data linking,templating and globalization in jQuery core?
    Not really, but for the future official plugins it would be nice for jQuery to offer some easier ways to build custom downloads like jQuery UI did.
    Really hard to have one file to make everyone happy.

  10. +1: Please consider #7783 – I really need $.proxy with arguments (like dojo’s hitch) !

    +1: please release #7102 in 1.5 – even considering it takes longer to do the release

  11. @John… ok, is there a rich description or example of what and how the subclassing works? (I am cautious that meanings from one group to the next tend to change.)

  12. Hey folks, great to read about that new ajax implementation and all the other features, but what I miss is a support for CSS3 attributes like rotate or other “complicated” attributes…

    Also new effects should be created with that. Actually the most valuable thing would be to avoid using browser specific prefixes like -moz- or -webkit- an such.

    Will there be any support for that in the nearer future?

  13. http://www.readwriteweb.com/hack/2011/01/jquery-upgrade-twitter.php

    There was a news story about issues with jQuery 1.4.4 causing Twitter to go back to jQuery 1.4.2 for their new Twitter version.

    Is the jQuery team aware of performance issues that did not exist in 1.4.2 but did exist in 1.4.4?

    May be worth researching so 1.5 can fix what Twitter and others are running into. Otherwise they will stick with 1.4.2 for a long time.

  14. Rihards on said:

    Most of the fixes are for IE, that’s so sad jQuery team has to waste time fixing the horrible stuff in IE.