Movatterモバイル変換


[0]ホーム

URL:


Official jQuery Blog

jQuery 3.6.3 Released: A Quick Selector Fix

Posted on by

Last week, we released jQuery 3.6.2. There were several changes in that release, but the most important one addressed an issue with some new selectors introduced in most browsers, like:has(). We wanted to release jQuery 3.6.3 quickly because anissue was reported that revealed a problem with our original fix. More details on that below.

As usual, the release is available onour cdn and the npm package manager. Other third party CDNs will probably have it soon as well, but remember that we don’t control their release schedules and they will need some time. Here are the highlights for jQuery 3.6.3.

UsingCSS.supports the right way

After theissue with:has that wasfixed in jQuery 3.6.2, we started usingCSS.supports( "selector(SELECTOR)") to determine whether a selector would be valid if passed directly toquerySelectorAll. WhenCSS.supports returnedfalse, jQuery would then fall back to its own selector engine (Sizzle). Apparently, our implementation had a bug. InCSS.supports( "selector(SELECTOR)"),SELECTOR needed to be a<complex-selector> and not a<complex-selector-list>. For example:

CSS.supports("selector(div)"); // trueCSS.supports("selector(div, span)"); // false

This meant that all complex selector lists were passed through Sizzle instead ofquerySelectorAll. That’s not necessarily a problem in most cases, but it does mean that some level 4 selectors that were supported in browsers but not in Sizzle, like:valid, no longer worked if it was part of a selector list (e.g."input:valid, div"). It should be noted this currently only affects Firefox, but it will be true in all browsers as they roll out changes toCSS.supports.

This has now been fixed in jQuery 3.6.3 and it is the only functional change in this release.

Upgrading

We do not expect compatibility issues when upgrading from a jQuery 3.0+ version. To upgrade, have a look at the new3.5 Upgrade Guide. If you haven’t yet upgraded to jQuery 3+, first have a look at the3.0 Upgrade Guide.

ThejQuery Migrate plugin will help you to identify compatibility issues in your code. Please try out this new release andlet us know about any issues you experienced.

If you can’t yet upgrade to 3.5+, Daniel Ruf has kindly providedpatches for previous jQuery versions.

Download

You can get the files from the jQuery CDN, or link to them directly:

https://code.jquery.com/jquery-3.6.3.js

https://code.jquery.com/jquery-3.6.3.min.js

You can also get this release from npm:

npm install jquery@3.6.3

Slim build

Sometimes you don’t need ajax, or you prefer to use one of the many standalone libraries that focus on ajax requests. And often it is simpler to use a combination of CSS and class manipulation for web animations. Along with the regular version of jQuery that includes the ajax and effects modules, we’ve released a “slim” version that excludes these modules. The size of jQuery is very rarely a load performance concern these days, but the slim build is about 6k gzipped bytes smaller than the regular version. These files are also available in the npm package and on the CDN:

https://code.jquery.com/jquery-3.6.3.slim.js

https://code.jquery.com/jquery-3.6.3.slim.min.js

These updates are already available as the current versions on npm and Bower. Information on all the ways to get jQuery is available athttps://jquery.com/download/. Public CDNs receive their copies today, please give them a few days to post the files. If you’re anxious to get a quick start, use the files on our CDN until they have a chance to update.

Thanks

Thank you to all of you who participated in this release by submitting patches, reporting bugs, or testing, includingMichal Golebiowski-Owczarek and the whole jQuery team.

Changelog

Full changelog:3.6.3

Build

  • remove stale Insight package from custom builds (81d5bd17)
  • Updating the 3.x-stable version to 3.6.3-pre. (2c5b47c4)

Selector

Comments are closed.

Categories

Recent Posts

Archives


[8]ページ先頭

©2009-2025 Movatter.jp