About Dave Methvin

CTO, PC Pitstop http://pcpitstop.com

jQuery 1.11.1 Beta 1 and 2.1.1 Beta 1 Released

Posted on by

It’s been a couple of months since our last releases escaped the grip of endless winter, so we thought it would be good to thaw out a beta that collects up the bugs that have been reported and fixed recently. Most of these bugs are mild as severity and frequency go, but that’s easier to say if you’re not impacted!

As with all our beta releases, we make them available so you can test against them and let us know if they fix the bugs without introducing new bugs, surprising behaviors, or regressions. Please help us out by dropping these files into your projects and pages for a quick spin. If you discover any undesirable changes, let us know at bugs.jquery.com.

The beta files are located on the jQuery CDN, you can include them directly from the CDN if you like (but don’t use them in production!). As always, the 1.x branch includes support for IE 6/7/8 and the 2.x branch does not:

http://code.jquery.com/jquery-1.11.1-beta1.js
http://code.jquery.com/jquery-2.1.1-beta1.js

Here are the bugs addressed by these releases:

Common to 1.11.1/2.1.1 Beta 1

Ajax

Attributes

Build

Core

Css

Event

Unfiled

jQuery 1.11.1 Beta 1

Css

jQuery 2.1.1 Beta 1

Ajax

Attributes

Core

Css

Event

Manipulation

Selector

Support

jQuery 1.11 and 2.1 Released

Posted on by

Here in the eastern part of the United States, we’re huddling in subzero temperatures and dealing with the aftermath of a snowstorm. Still, there’s nothing to brighten our moods like the pristine beauty of a freshly fallen release–no, make that TWO releases. jQuery 1.11.0 and 2.1.0 are ready to keep you warm on these dark winter nights.

You can get the files off our CDN as always, and either use them directly or download them to your own server. Our download page has all the files and information you need, including pointers to the other CDNs that carry the files. Just give those folks a few days to update!

For those of you not following along for a while, both the 1.x and 2.x branches of jQuery support all recent modern browsers and have the same API. The 1.x branch, this time 1.11.0, adds support for the older versions of Internet Explorer (IE6, 7, and 8). The 2.x branch, today played by 2.1.0, adds support for non-traditional web environments like node.js and browser plugins for Chrome and Firefox.

jQuery went through a major house-cleaning with the 1.9 release that removed some features. If you haven’t yet moved from an earlier version, see the jQuery 1.9 Upgrade Guide and let the jQuery Migrate plugin do all the heavy lifting for you.

What’s New?

You may be wondering what great new things await you in these releases. Perhaps you’re fearing that they hold a bunch of breaking changes. You just know the project lead will suggest updating things right now. There goes your whole damn week and that trip to Florida. Well fear not! We’ve fixed quite a few bugs, but the other features and changes are mainly organizational ones that don’t affect the behavior of APIs. Your code shouldn’t break, it should just run a little faster. Here are the highlights:

Fewer forced layouts: In this release we declared war on places where we might inadvertently force the browser to do a time-consuming layout. We found a few and eliminated one in particular that could occur when changing class names. This can result in a big performance boost for some pages.

Granular custom builds: Our modularity is now defined by AMD, and it is easier to build small subsets of the library when space is at a premium. If you want to know more, we’ve hidden the details in the README file where nobody ever looks.

Lower startup overhead: The new modularity and avoidance of forced layouts led us to refactor our feature detects so that they run the first time they’re needed. If you never call the API needing that feature detect, you never run that code. Previously we ran all feature detects when the page loaded, that led to delays that were generally small, but added up–especially on mobile platforms.

Published on npm: Our releases will now be published on npm so that you can use them with node or browserify. Both the 1.x and 2.x branches are available on npm, but remember that only the 2.x branch is supported to run in node.

Published on Bower: We’re now using Bower for our internal dependency management including Sizzle, so you’ll see jQuery releases on Bower as soon as they’re available.

Some people have asked about supporting other package managers inside the jQuery library, but we’ve decided to only support the two that we use internally at the moment. There are more than a dozen package/dependency managers, it would be handy if they all could agree on a single format for projects to publish information. We don’t want the package manager’s overhead to be pushed off to individual projects like jQuery.

Although the glamor always seems to be in the new stuff, we don’t like to ignore the bugs and inconveniences that people have run across while using the last version. We worked hard to knock down our bug list and tackled quite a few of them. We even fixed a bug that only occurs in IE6, better late than never!

Sourcemap changes

This release does not contain the sourcemap comment in the minified file. Sourcemaps have proven to be a very problematic and puzzling thing to developers, spawning hundreds of confused developers on forums like StackOverflow and causing some to think jQuery itself was broken.

We’ll still be generating and distributing sourcemaps, but you will need to add the appropriate sourcemap comment at the end of the minified file if the browser does not support manually associating map files (currently, none do). If you generate your own jQuery file using the custom build process, the sourcemap comment will be present in the minified file and the map is generated; you can either leave it in and use sourcemaps or edit it out and ignore the map file entirely.

We hope to bring back and improve sourcemap support in the future, but at the moment neither the design nor the implementation seem suited for situations like jQuery’s, where there are widely distributed files on CDNs. We’d like sourcemaps (and browsers supporting them) to gracefully handle situations like file renaming or missing files. See our bug ticket for more information.

Acknowledgements

This release would not have happened without the hard work of many people. Thanks to everyone who reported bugs, tried out the prerelease files, or provided constructive criticism. Particular thanks are due to Alex Robbin, Amey Sakhadeo, Anthony Ryan, Aurelio DeRosa, Chris Antaki, Chris Price, Christopher Jones, Corey Frang, Daniel Herman, Domenic Denicola, Dominik D. Geyer, Forbes Lindesay, George Kats, Guy Bedford, Ilya Kantor, Jakob Stoeck, Jeremy Dunck, John Paul, Julian Aubourg, Jörn Zaefferer, Lihan Li, Marian Sollmann, Markus Staab, Marlon Landaverde, Michał Gołębiowski, Mike Sidorov, Oleg Gaidarenko, Richard Gibson, Rick Waldron, Ronny Springer, Scott González, Sindre Sorhus, T.J. Crowder, Terry Jones, Timmy Willison, and Timo Tijhof. Colin Snover’s commentary in #jquery-dev is also a source of rare humor for the team.

Changelog

jQuery 1.11 and 2.1 (common to both)

Ajax

Attributes

Build

Core

Css

Data

Effects

Event

Manipulation

Misc

Selector

Support

jQuery 1.11

Ajax

Attributes

Build

Core

Effects

Support

jQuery 2.1

Ajax

Build

Core

Event

jQuery 1.11.0 RC1 and 2.1.0 RC1 Released

Posted on by

We’re just about ready for the final release of jQuery 1.11 and 2.1! Before we release, we’d like you to sanity-check our work. It will save us both a bunch of work if you check things out now, rather than waiting for a release. If something’s not right, we can fix it before millions of people have to deal with it!

Testing is easy, just use one of these files on the jQuery CDN:

We’ve also published the files on npm for those of you using that for dependency management. This version should work properly with browserify.

This version is mainly about fixing bugs and supporting more dependency managers, so you shouldn’t expect to see compatibility issues if you’ve already migrated to 1.9 or higher. But that’s why we’re putting out a release candidate, we want this to be as stable as possible. If you do see problems, please report them at bugs.jquery.com.

Go forth and test!

Changelog

Common to both jQuery 1.11 RC1 and jQuery 2.1 RC1

Ajax

Attributes

Build

Core

Css

Data

Effects

Event

Misc

Selector

Support

jQuery 1.11 RC1

Ajax

Core

Effects

Support

jQuery 2.1 RC1

Ajax

Build

Core

Event

The jQuery Foundation and Standards

Posted on by

Most web developers think about jQuery in terms of its roots, as a library that tries to bring sanity to a disparate set of APIs and quirks that vary from browser to browser. Although that’s one of the things that jQuery was built to do, and still does, it’s not the only thing. jQuery defines a useful API that makes it as easy to work with one element as it does for a dozen. jQuery shortens verbose DOM API names and removes tedious boilerplate code, making it easier to write and to read code. jQuery adds functionality beyond the standard APIs for the work that web developers often need to do.

In short, jQuery isn’t just an API repairman for browsers. To the extent that we need to fix problems, we do it. But we’re even more interested in getting browsers to fix their problems, and in shaping future standards to avoid problems, so native APIs will work properly from the start. Then we can all build useful functionality on top of that solid foundation.

jQuery team members bring plenty of real-world experience that guide standards in the right direction. The earliest example of this is the querySelectorAll method, where John Resig pointed out that the implementation wasn’t quite what JavaScript developers needed. Unfortunately in the case of querySelectorAll, it was too late to do anything to fix the problems.

How jQuery Can Shape Standards

In order to provide input into emerging standards, the jQuery Foundation joined the World Wide Web Consortium (W3C) and ECMA International last year. In fact, it’s one of the main reasons the Foundation was formed. W3C and ECMA members tend to be representatives of the companies that make browsers and commercial software. We believe that we bring the voice of the rank-and-file web developer to the standards process.

Yehuda Katz and Rick Waldron have been active in the ECMA TC39 group, which defines the language officially known as EcmaScript but that we know as JavaScript. Rick’s excellent meeting notes can give you an inside view of the deliberations that go on during their in-person meetings.

Scott González and Kris Borchers have been working to refine the Pointer Events standard. It brings simplicity, regularity, and sanity to the handling of pointer technologies so that developers don’t have inconsistent (and conflicting!) event models for touch and mouse. During the transition, developers will be dealing with three pointer models–mouse, touch, and pointer. jQuery and jQuery UI want to simplify this transition to the standard.

Julian Aubourg has been participating on revisions to the XMLHttpRequest standard, a position for which he’s been battle-tested by jQuery’s $.ajax implementation. Knowing all the problems that jQuery has worked around provides him with experience to avoid the same problems in the future.

Scott González and TJ VanToll have been active in helping to define HTML5 input types such as <input type=”date”>, providing practical input based on experience with jQuery UI. TJ’s talk at the Portland jQuery Conference does a great job of covering the pitfalls of using HTML5 input types today, and emerging standards like Web Components that could make things easier for web developers.

The jQuery Foundation is also a strong advocate of accessibility; we want to make it easy for web developers to reach all users including those with vision or motor impairments. The W3C addresses those issues through the Web Accessibility Initiative, and specifically with Accessible Rich Internet Applications (ARIA). jQuery UI widgets are incorporating ARIA attributes, and Foundation member Deque Systems has sponsored several events on jQuery accessibility issues.

Finally, we coordinate and pass along bugs reported to jQuery that are due to standards violations in a particular browser. With most browsers updating every few months, it often doesn’t make sense for jQuery to incorporate large and complex bug fixes for temporary problems. But we’re committed to getting them fixed by the browser makers as soon as possible.

A Standards-Driven jQuery Future

jQuery isn’t a highly opinionated framework that demands control over all the DOM. In most cases you can (and often should) use the DOM APIs alongside jQuery. That was always the intended design; you can see it in aspects like the this object inside an event handler being a DOM element, not a jQuery object. About the only place where jQuery requires control is when elements in the DOM are replaced via methods like .html() or removed with a method like .empty(), so that any associated jQuery data can be cleared out.

Similarly, the built-in HTML5 input types can coexist with jQuery UI input widgets. jQuery UI is committed to providing user interface widgets that provide great functionality without sacrificing accessibility, inherently supporting standards such as ARIA.

The jQuery Foundation wants standards-based APIs and cutting-edge JavaScript features to be usable directly by developers. The good news is that the community is making good progress on that goal, and jQuery team members are helping through our participation in the standards process. Yet the continuing evolution of web standards and practices, combined with a vibrant third-party ecosystem of plugins and knowledge, still provide compelling reasons to use jQuery. Web developers deserve to have the best of both.

jQuery’s Content Delivery Network: You Got Served!

Posted on by

MaxCDNIn 2013, MaxCDN joined the jQuery Foundation and stepped up to provide Content Delivery Network (CDN) services for the jQuery CDN at code.jquery.com. Files can now be requested through both HTTP and HTTPS (SSL) protocols, either to download to your own servers or to use directly on production web sites. MaxCDN’s infrastructure can reliably deliver jQuery files through a worldwide high-speed collection of servers to minimize round-trip time.

Why a CDN is Useful to Developers

The obvious benefit is that the MaxCDN network is much faster than the average server, and geographically distributed so that round-trip times are kept low. Yet there is another subtle benefit. Many web sites simply serve up all their content (HTML, CSS, scripts, images, and other assets) from the same domain. This can create a bottleneck on both the browser and the server. Downloading content from multiple domains, known as domain sharding, can improve performance. Just remember that as with any good thing, going overboard is a bad idea. Some research shows that just two domains may be the sweet spot. Use a tool like WebPageTest to test your site to get the best results.

Why a CDN is Useful to jQuery Projects

jQuery projects serve out a huge number of bytes, especially on days when a project makes a new release. When developers rush to download the latest version, we want to be able to handle the load. GitHub does a great job of supporting our development cycle and working project files, but it is not designed to serve up billions of copies of our production files. Google and Microsoft also provide CDNs, but it can take several days between the time a project makes a release and the time the files appear on those CDNs. Third-party CDNs also have their own rules about which files can be placed on the CDN, for example they don’t post pre-release versions. The jQuery CDN allows us full control over timing and content.

Serving Billions of Files, Trillions of Bytes

We thought we were serving a lot of files, but some statistics from MaxCDN really drive home the point. In the last five months of 2013, the CDN served more than 82 billion files, exceeding 3.6 petabytes. We sent out enough bytes to completely fill 3,269 1-terabyte disk drives! An average day on the CDN has us serving up about 20 terabytes of data.

Here are the ten most popular files requested from the CDN:

# File name Hits
(billion)
Size
(terabytes)
1 jquery-latest.js 6.36 404.65
2 jquery-1.9.1.min.js 5.93 193.96
3 jquery-1.7.2.min.js 4.95 154.50
4 jquery-latest.min.js 4.45 116.08
5 /ui/1.10.3/jquery-ui.js 4.18 484.58
6 jquery-1.9.1.js 2.45 178.54
7 jquery-1.10.1.min.js 2.27 71.62
8 jquery-1.7.1.min.js 2.26 78.05
9 jquery-1.4.2.min.js 2.07 39.80
10 /ui/1.10.3/themes/smoothness/jquery-ui.css 1.55 9.83

There are some encouraging signs here. Some of the most popular files are the minified files, as they should be for a production web site. It’s also encouraging that recent versions of jQuery Core (1.9.1 and 1.10.1) are high up on the list. That means a lot of jQuery developers are keeping up with the features and bug fixes we’ve been adding.

The most commonly requested file is jquery-latest.js, which automatically updates whenever the jQuery Core team releases a new version. Developers should never use jquery-latest.js or jquery-latest.min.js on a production site, it is primarily meant for testing. Similarly, the full jQuery UI build at position 5 is the latest version, but that file may not be a good fit for production sites needing only a few jQuery UI widgets. A minified copy with just the needed widgets can be built on the download builder page.

Counting on the CDN

Thanks to MaxCDN’s contribution, the jQuery Foundation has a content delivery network that offers reliable high-speed access to all of our project files. The files at code.jquery.com serve as the official repository for all jQuery project releases. You can either download the file for local use, or reference our domain directly from your own web pages to take advantage of the CDN and domain sharding.

The State of jQuery 2014

Posted on by

The year 2013 was an incredibly exciting one for jQuery. As jQuery celebrates eight years of supporting web developers, it’s time for our annual review. I’m pleased to say that we achieved a lot in 2013 and have some great plans for 2014!

New Leadership

In November, Kris Borchers became Executive Director of the jQuery Foundation as successor to Richard Worth. Kris has been a jQuery Foundation board member and a long-time jQuery contributor, so he understands the mission of the Foundation well. We welcome Kris, and thank Richard for his work in shepherding the Foundation through its first full year of existence.

jQuery used by 68% of the top 100k sites

Continuing Growth

It seems impossible to believe there are still web sites that don’t use jQuery, but the statistics at builtwith.com show there are fewer and fewer of them. jQuery’s core library is used by more than 61 percent of the top 100,000 sites, up 10 percent from last year. Growth is also strong in other jQuery Foundation projects such as jQuery UI, which is now used by nearly one-fifth of top-10,000 web sites.

New Environments

jQuery is also used in a lot of places that can’t be identified through a web crawl. You’ll find jQuery anywhere web technologies are used, not just the public Internet. That includes Google Chrome add-ons, Mozilla XUL apps and Firefox extensions, Firefox OS apps, Chrome OS apps, Windows 8 Store apps, BlackBerry 10 WebWorks apps, PhoneGap/Cordova apps, Node.js, and even the Sony PlayStation 4. By supporting these technologies, we’ve made it possible to take advantage of jQuery knowledge in many places other than just browsers and web pages.

Future-Oriented

In January 2013, we released jQuery 1.9; then jQuery 2.0 was released in April. These two versions dumped old APIs that were making jQuery bigger, slower, and harder to use. jQuery 2.0 went a step further and dropped support for environments that don’t support newer standards, such as Internet Explorer before version 9. From an API standpoint, the two behave identically, though; web developers can update to the 2.x branch whenever those older versions of IE are no longer important to their web pages or apps.

Backwards-Compatible

We knew that removing some old functionality from jQuery core could make migration slow and difficult; after all, a lot of code on web sites was written years ago and the people who wrote it are long gone. That’s why we created the jQuery Migrate plugin to identify code that was using the features we removed. Better than that, it allowed most of that old code to continue to work by shimming in the old behavior. It’s a great tool for keeping a site running while things are being updated, although we don’t advise using it for a long-term fix.

jQuery Served Your Way

With jQuery being used in so many environments, we want to make sure it fits with their workflows and conventions. So, we’re adapting by making jQuery available on both the npm and Bower package managers. This makes it easy for just about any JavaScript-based project to keep jQuery dependencies up to date. Last year’s refactor of jQuery core into small modules also lets developers create a custom build that removes features a project doesn’t need, to reduce the download size.

Keeping it Simple

We haven’t forgotten, however, that most developers keep things simple and just include a copy of the standard jQuery build using a <script> tag. So in 2013 we upgraded our content delivery network (CDN) thanks to a generous donation from MaxCDN. The jQuery CDN is now better than ever and supports the https protocol for delivering all files.

Advocating for Developer Needs

jQuery’s use of a convenient and browser-independent layer around the cumbersome DOM interfaces is one reason for its popularity. As Simon St. Laurent put it, “jQuery is how the web routes around broken API design.” But we don’t want the DOM API repair business to be our full-time line of work. People should be continuing to use jQuery because it’s a powerful way to implement designs and provides a vibrant ecosystem of useful plugins, not because the native DOM APIs are broken, verbose, or inconsistent. That’s why we participate in the standards process through bodies such as the W3C and ECMA.

Let’s Keep Innovating!

Over the next few days, posts on this blog will be counting the ways that the jQuery Foundation is improving the web developer community, in keeping with our mission. If you see something that interests you, we invite you to get in touch with us and participate!

Dave Methvin
President, jQuery Foundation

jQuery 1.11.0/2.1.0 Beta 3 Released

Posted on by

Put down the egg nog and get ready to test. The latest (and most likely last) betas of jQuery 1.11 and 2.1 are now submitted for your inspection and approval. You can get them here:

We know you’ve got a few days off over the holidays, so give us a big present and help us test! Don’t forget that jQuery 1.x supports IE 6/7/8 and jQuery 2.x does not. In other ways the two versions should echo the same feature sets, so it should be possible to switch between the two without too much trouble.

Notable changes

Asynchronous Module Definition (AMD): jQuery components are now built with AMD. jQuery has supported having the library itself loaded by an AMD loader ever since version 1.7. Now, we’re using AMD internally as well, replacing our old modular build system. If you want to know more, see the README file.

Published on npm: The 2.x branch of this beta and all our future 2.x releases will be published on npm so that you can use it with node or packages like browserify. If you want to install the beta, you can use npm install [email protected].

Still to come: No global for the npm version: After polling potential npm/browserify users, we have decided to keep the global namespace clean and not to expose the jQuery global in these situations. Instead, you can do it yourself with window.jQuery = window.$ = require("jquery"). That ticket didn’t make it into the beta, but you should assume you’ll need to set it yourself.

Performance: Our new “lazy feature detects” reduce the startup time for the library, which is especially good for mobile devices. If you never call the API, you never even need to run that code! We also found and removed some situations where jQuery unnecessarily forced a page layout to occur.

Bug fixes: Lots and lots of bug fixes are in this release, including several to ensure the latest versions of browsers like IE11 work smoothly and eliminate console warnings in Chrome. Many fixes are shared across both versions. You can see the complete changelog below.

Breaking changes: None! We’re committed to making this an easy update for you if you already did an upgrade to 1.9+ or are using the jQuery Migrate plugin. So don’t be a chicken, test this beta!

Release Notes

Twas the week before Christmas, when all through the house
Not a creature was stirring, not even a mouse.
The code was checked by the team with such care,
In hopes that a new beta soon would be there.

Contributors nestled all snug in their beds,
While visions of working code danced in their heads.
The pull requests landed, commits all now pushed,
GitHub issues closed, the whole team is bushed.

When on the CDN there arose such a clatter,
I sprang from the bed to see what was the matter.
Away to the laptop I flew like a flash,
Popped open a window and started up bash.

My wondering eyes barely processed the data,
It’s release 3 of jQuery 1.11 and 2.1 beta!

And then, on the roof, I heard at the ready,
The loading of code that was solid and steady.
As I drew in my head, and was turning around,
Down the chimney St. jQuery came with a bound.

“I’m needing your help,” St. jQuery exclaimed,
“If we ship code with bugs I know I’ll be flamed!”
“Just run this beta with your best sites and apps,
so we know if our changes avoided the traps.”

More rapid than eagles contributors came,
He whistled, and shouted, and thanked them by name!
“Now Timmy! now, Richard! now Micha&#322 and John!
On Oleg! On Chris! On Jakob and Hong!
To the top of the list, your reward won’t be small!
Now cache away! Cache away! Cache away all!”

He sprang to his sleigh, to his team gave a whistle,
And away they all flew like the down of a thistle.
But I heard him exclaim, as he drove out of sight,
“Happy beta to all, and to all a good-night!”

Changelog

Common to both jQuery 1.11 Beta 3 and jQuery 2.1 Beta 3

Ajax

Attributes

Build

Core

Css

Data

Effects

Event

Selector

Support

jQuery 1.11 Beta 3

Ajax

Core

Effects

Support

jQuery 2.1 Beta 3

Ajax

Build

Core

Event

Unfiled

jQuery 1.11.0/2.1.0 Beta 2 Released

Posted on by

The latest betas of jQuery 1.11 and 2.0 have arrived! You can get them here:

Don’t forget that jQuery 1.x supports IE 6/7/8 and jQuery 2.x does not.

What’s in the beta

Asynchronous Module Definition (AMD): The biggest change in 1.11/2.1 continues to be AMD. jQuery has supported having the library itself loaded by an AMD loader ever since version 1.7. Now, we’re using AMD internally as well, replacing our old modular build system. If you want to know more, read the README file.

Published on npm: The 2.x branch of this beta and all our future 2.x releases will be published on npm so that you can use it with node or packages like browserify. Note that the main jquery page is currently not up to date, and won’t be until we push the final 2.1.0 to it. If you want to install the beta, you can use npm install [email protected]. Many thanks to Domenic Denicola who has already reported bugs #14548 and #14549 that will be fixed in the next go-round.

Performance: Our new “lazy feature detects” reduce the startup time for the library, which is especially good for mobile devices. If you never call the API, you never even need to run that code! We also found and removed some situations where jQuery unnecessarily forced a page layout to occur.

Bug fixes: Lots and lots of bug fixes are in this release, including several to ensure the latest versions of browsers like IE11 work smoothly and eliminate console warnings in Chrome. Many fixes are shared across both versions. You can see the complete changelog below.

Breaking changes: None! We’re committed to making this an easy update for you if you already did an upgrade to 1.9+ or are using the jQuery Migrate plugin.

Please do give these betas a try and let us know whether everything is working as you’d like. It’s always frustrating to us when we make a new production release and people find bugs that could have been fixed during the beta process. It only takes a few minutes to smoke-test your code against these betas, and it will save both you and us a lot of future heartache!

Sad sourcemap story

One of the changes we’ve made in this beta is to remove the sourcemap comment. Sourcemaps have proven to be a very problematic and puzzling thing to developers, generating scores of confused questions on forums like StackOverflow and causing users to think jQuery itself was broken.

We’ll still be generating and distributing sourcemaps, but you will need to add the appropriate sourcemap comment at the end of the minified file if the browser does not support manually associating map files (currently, none do). If you generate your own jQuery file using the custom build process, the sourcemap comment will be present in the minified file and the map is generated; you can either leave it in and use sourcemaps or edit it out and ignore the map file entirely.

We will be encouraging browser makers to come up with better ways to handle sourcemaps for situations like jQuery’s, where there are widely distributed files on CDNs. We’d like sourcemaps to be robust and gracefully handle situations like file renaming or missing files. See our bug ticket for more information.

Let’s give thanks

As Thanksgiving Day approaches, let’s give a hand to the great people who have contributed to jQuery core code since the last release: Amey Sakhadeo, Anthony Ryan, Chris Antaki, Chris Price, Corey Frang, Daniel Herman, Dominik D. Geyer, George Kats, Guy Bedford, Ilya Kantor, Jeremy Dunck, Jörn Zaefferer, Lihan Li, Marian Sollmann, Michał Gołębiowski, Mike Sidorov, Noah Hamann, Oleg Gaidarenko, Richard Gibson, Ronny Springer, Scott González, Sindre Sorhus, Terry Jones, Timmy Willison, and Timo Tijhof.

jQuery 1.11 and 2.1 Beta 2 Changelog (common to both)

Ajax

Attributes

Build

Core

Css

Data

Effects

Event

Selector

Support

jQuery 1.11 Beta 2

Ajax

Core

Effects

Support

jQuery 2.1 Beta 2

Ajax

Build

Core

Event

jQuery 1.11 and 2.1 Beta 1 Released

Posted on by

Ahoy Matey! Do you know what today is? It’s Talk Like a Pirate Day!

Before the jQuery team weighed anchor and ran for the grog, we left a treasure chest on the jQuery CDN filled with beta versions of jQuery 1.11 and 2.1. Here be the treasure map to the bounty:

Don’t forget that jQuery 1.x supports IE 6/7/8 and jQuery 2.x does not. Here are the highlights of what changed:

Asynchronous Module Definition (AMD): In this release we’re going full-mast with AMD. jQuery has supported having the library itself loaded by an AMD loader ever since version 1.7. Now, we’re using AMD internally as well, replacing our old modular build system. Colin Snover started it with some fine cutlass work, then Timmy Willison made sure the whole library was drawn and quartered properly with AMD. He even mollycoddled you with a fine README file so you can be buildin’ yer own custom version. And because we’re pirates, we’re using aaaarrrrr.js to build it.

Performance: Michał Gołębiowski led the charge to reduce jQuery’s startup time by deferring much of the feature detection code so that it runs the first time you use an API call, rather than on page load. If you never call the API, you never even need to run that code! We also found and removed some situations where jQuery unnecessarily forced a page layout to occur.

Bower support: We’re now using Bower for a lot of our internal dependency management, and plan to publish production versions of jQuery to Bower in the future.

Bug fixes: We keelhauled a few scurvy bugs since the last versions. There’s a list down the way if you want to be knowin’.

API changes: None! With all the internal code changes for AMD, we didn’t want to change a lot of APIs in this version. Your old scurvy code should work with no problems as long as you already did an upgrade to 1.9+ or are using the jQuery Migrate plugin.

Now we know some of you may not be takin’ the time to try this beta. We got a name for you: bilge rats. Don’t be comin’ to us after the release and complainin’ about bugs. Get on board and man the lines so we can get this code shipshape before the beta is over!

A tip of the pirate hat to the sea dogs and scallywags who got this release under way: Timmy Willison, Michał Gołębiowski, Oleg Gaidarenko, Richard Gibson, Amey Sakhadeo, Jörn Zaefferer, Chris Price, Daniel Herman, Guy Bedford, Jeremy Dunck, Mike Sidorov, and Terry Jones. And of course an aye-aye shout-out to the original jQuery pirate, Long John Resig!

jQuery 1.11 and 2.1 Changelog (common to both)

Ajax

Attributes

Build

Core

Css

Effects

Event

Selector

Support

jQuery 2.1

Build

Core

jQuery 1.11

Effects

jQuery 1.10.2 and 2.0.3 Released

Posted on by

It’s nearly Independence Day here in the USA, so we’re delivering something fresh off the grill: jQuery 1.10.2 and 2.0.3. These releases fix a few pesky bugs that have been reported over the past month, but the list is refreshingly small. Since some of the bugs spanned both the 1.x and 2.x branches we’re releasing new versions of both to keep them in sync.

You can get the latest files from the jQuery download page, including sourcemap files and links to helpful tools such as jQuery Migrate. If you’re upgrading from a version of jQuery before 1.9, please do read through that page carefully to make your migration as pain-free as possible. Remember that it may take a few days for the CDNs at Google, Microsoft, and CDNJS to respond to the rocket’s red glare and post the latest versions. In the meantime, use the copy on the jQuery CDN.

We’re pretty optimistic that these latest bug-fix releases should be free of surprises. If you drop the new files into your site and see fireworks, please do your patriotic duty and report a bug with a test case (preferably using jsFiddle) at our bug tracker.

These releases wouldn’t have happened without the contributions of Jason Bedard, Jason Merino, Jörn Zaefferer, Michał Gołębiowski, Nguyen Phuc Lam, Oleg Gaidarenko, Richard Gibson, Rick Waldron, Terry Jones, and Timmy Willison.

jQuery 1.10.2 and 2.0.3 Changelog (common to both)

Build

Css

Selector

jQuery 2.0.3 Changelog (specific to 2.x)

Data

Manipulation