jQuery Core 3.0 への更新方法や注意点の自分なりのまとめ
jQuery 3.0 では API の整理やバグ修正のため、 互換性の無くなる変更が公式 API 、非公式 API を問わず多く行われています。 そのため、jQuery 1.x(2.x)から 3.x に更新して問題が出ないように 更新ガイドが公式から出ています。
そのjQuery Core 3.0 Upgrade Guide や jQuery Migrate 3.x の警告文集 を読んで jQuery 3.x への更新方法や その際の注意点を自分なりに(今さらですが)まとめました。
以下のリストの「○」が付いている項目は jQuery Migrate プラグインが 警告してくれる項目です。「△」が付いている項目は部分的に警告してくれる項目です。 「◎」が付いている項目は Migrate プラグインが警告だけでなく動作の変更も行う 項目です(jQuery Migrate 3.x の警告文集から判断)。
- ブラウザサポート
- jQuery Migrate プラグインと3.0への更新手順
-
重要な変更の概要
- Ajax
- Attributes
- Callbacks
-
Core
- Breaking change: jQuery 3.0 は Strict Mode で実行されます
- Breaking change: document-ready ハンドラは常に非同期となった
- ○Breaking change:
jQuery.isNumeric()
と 独自の.toString()
- Breaking change: 廃止予定だった
.context
と.selector
プロパティが削除された - ○Breaking change: 廃止予定だった
.size()
が削除された - △Breaking change: 文書化されていない内部メソッドはもう外に晒しません
- Breaking change: 空の集合時の返り値は undefined です
- Feature: for...of ループが jQuery コレクションで使用可能に
- Feature:
jQuery.ready
promise が公式にサポートされる - ○Deprecated:
jQuery.unique()
がjQuery.uniqueSort()
に改名 - ○Deprecated:
jQuery.parseJSON()
- Deprecated:
jQuery(function)
以外の document-ready ハンドラの登録
- Data
- Deferred
- Dimensions
- Effects
- Event
- Manipulation
- Offset
- Selector
- Serialize
- Traversing