Query发布已经十年了,挺让人难以置信。过去的这些年Web开发变了很多,jQuery也随之变化着。在这个过程中,团队一直在对确保过往代码的兼容支持和获取最好的Web开发实践的现实之间努力着。就在2天前,jQuery发布了新的3.0最终版本
jQuery 3.0 最终版发布了。jQuery 3.0将是jQuery的未来。但如果你需要IE6-8支持,您可以继续使用最新版本1.12。
为了帮助用户升级,jQuery 发布了全新的3.0升级指南,以及 jQuery Migrate 3.0 插件将帮助您识别代码中的兼容性问题。
您可以从jQuery CDN获取文件,或者直接访问链接:
https://code.jquery.com/jquery-3.0.0.js
https://code.jquery.com/jquery-3.0.0.min.js
您也可以从以下npm获得更新:
npm install jquery@3.0.0
此外,jQuery Migrate 3.0 也更新了。地址:
https://code.jquery.com/jquery-migrate-3.0.0.js
https://code.jquery.com/jquery-migrate-3.0.0.min.js
npm install jquery-migrate@3.0.0
更新日志:
Ajax
Golf away 21 bytes (eaa3e9f)
Preserve URL hash on requests (#1732, e077ffb)
Execute jQuery#load callback with correct context (#3035, 5d20a3c)
Ensure ajaxSettings.traditional is still honored (#3023, df2051c)
Remove unnecessary use of jQuery.trim (0bd98b1)
Attributes
Avoid infinite recursion on non-lowercase attribute getters (#3133, e06fda6)
Add a support comment & fix a link @ tabIndex hook (9cb89bf)
Strip/collapse whitespace for set values on selects (#2978, 7052698)
Remove redundant parent check (b43a368)
Fix setting selected on an option in IE<=11 (#2732, 780cac8)
CSS
Don't workaround the IE 11 iframe-in-fullscreen sizing issues (#3041, ff1a082)
Toggle detached elements as visible unless they have display: none (#2863, 755e7cc)
Make sure elem.ownerDocument.defaultView is not null (#2866, 35c3148)
Add animation-iteration-count to cssNumber (#2792, df822ca)
Restore cascade-override behavior in .show (#2654, #2308, dba93f7)
Stop Firefox from treating disconnected elements as cascade-hidden (#2833, fe05cf3)
Core
Implement ready without Deferred (#1778, #1823, 5cbb234)
Improve isNumeric logic and test coverage (#2780, 7103d8e)
Set the base href of the context in parseHTML (#2965, 10fc590)
Simplify isPlainObject (#2986, e0d3bfa)
Add test for `jQuery.isPlainObject(localStorage)` (ce6c83f)
Do not expose second argument of the `jQuery.globalEval` (6680c1b)
Deprecate jQuery.parseJSON (#2800, 93a8fa6)
Deferred
Separate the two paths in jQuery.when (#3029, 356a3bc)
Provide explicit undefined context for jQuery.when raw casts (#3082, 7f1e593)
Remove default callback context (#3060, 7608437)
Warn on exceptions that are likely programming errors (#2736, 36a7cf9)
Propagate progress correctly from unwrapped promises (#3062, d5dae25)
Make jQuery.when synchronous when possible (#3100, de71e97)
Remove undocumented progress notifications in $.when (#2710, bdf1b8f)
Give better stack diagnostics on exceptions (07c11c0)
Dimensions
Add tests for negative borders & paddings (f00dd0f)
Docs
Fix various spelling errors (aae4411)
Update support comments related to IE (693f1b5)
Fix an incorrect comment in the attributes module (5430c54)
Updated links to https where they are supported. (b0b280c)
Update support comments to follow the new syntax (6072d15)
Use https where possible (1de8346)
Use HTTPS URLs for jsfiddle & jsbin (63a303f)
Add FAQ to reduce noise in issues (dbdc4b7)
Add a note about loading source with AMD (#2714, e0c25ab)
Add note about code organization with AMD (#2750, dbc4608)
Reference new feature guidelines and API tenets (#2320, 6054139)
Effects
Remove width/height exception for oldIE (#2488, e04e246)
Add tests for using jQuery.speed directly (#2716, cb80b42)
Event
Allow constructing a jQuery.Event without a target (#3139, 2df590e)
Add touch event properties, eliminates need for a plugin (#3104, f595808)
Add the most commonly used pointer event properties (7d21f02)
Remove fixHooks, propHooks; switch to ES5 getter with addProp (#3103, #1746, e61fccb)
Make event dispatch optimizable by JavaScript engines (9f268ca)
Evaluate delegate selectors at add time (#3071, 7fd36ea)
Cover invalid delegation selector edge cases (e8825a5)
Fix chaining .on() with null handlers (#2846, 17f0e26)
Remove pageX/pageY fill for event object (#3092, 931f45f)
Events
Don't execute native stop(Immediate)Propagation from simulation (#3111, 94efb79)
Manipulation
Bring tagname regexes up to spec (#2005, fb9472c)
Offset
Resolve strict mode ClientRect “no setter” exception (3befe59)
Selector
filters -> pseudos (#2073, 0402963)
Update Sizzle to 2.3.0 (5c4be05)
Add jQuery.escapeSelector (#1761, 25068bf)
Serialize
Treat literal and function-returned null/undefined the same (#3005, 9fdbdd3)
Reduce size (91850ec)
Support
Improve support properties computation (#3018, 44cb97e)
Tests
Take Safari 9.1 into account (234a2d8)
Limit selection to #qunit-fixture in attributes.js (ddb2c06)
Set Edge's expected support for clearClone to true (28f0329)
Fix Deferred tests in Android 5.0's stock Chrome browser & Yandex.Browser (5c01cb1)
Add additional test for jQuery.isPlainObject (728ea2f)
Build: update QUnit and fix incorrect test (b97c8d3)
Fix manipulation tests in Android 4.4 (0b0d4c6)
Remove side-effects of one attributes test (f9ea869)
Account for new offset tests (f52fa81)
Make iframe tests wait after checking isReady (08d73d7)
Refactor testIframe() to make it DRYer and more consistent (e5ffcb0)
Weaken sync-assumption from jQuery.when to jQuery.ready.then (f496182)
Test element position outside view (#2909, a2f63ff)
Make the regex catching Safari 9.0/9.1 more resilient (7f2ebd2)
Traversing
.not/.filter consistency with non-elements (#2808, 0e2f8f9)
Never let .closest() match positional selectors (#2796, a268f52)
Restore jQuery push behavior in .find (#2370, 4d3050b)