jQuery 1.9.0でなくなった機能を補完する「jquery-migrate」
配布元jquery/jquery-migrate Github
ライセンス:MITライセンス
「jquery-migrate」はjQuery 1.9.0で廃止になった様々な機能を保管するjQueryプラグインです。「jquery-migrate」で保管されているのは以下の機能。
- jQuery.browser
- jQuery.fn.andSelf()
- jQuery.sub()
- jQuery.fn.toggle() (コールバック関数を順番に発生させるもの)
- hover擬似イベント(参考)
- jQuery.fn.error()
- ajaxStart, ajaxSend, ajaxSuccess, ajaxError, ajaxComplete, ajaxStop などがdocumentのみに設定可能に変更
- Event オブジェクトのattrChange, attrName, relatedNode, srcElement
- jQuery.fn.attr() (非公式の第4引数)
- jQuery.attrFn
- jQuery.fn.data()のイベント取得取得
非公式の機能が多いですがjQuery.browserなどは非常によく使われる機能ですので、jQuery 1.9.0だとプラグインが動かないといケースがかなり発生しそうです。そういった場合に「jquery-migrate」の登場です。
jQuery本体の後にGithubで公開されているプラグイン本体か、jQueryが公開しているCDNのを「jquery-migrate」を読みます。
<script src="http://code.jquery.com/jquery-1.9.0.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.0.0.js"></script>
これで上記の機能は利用可能になります。
alert($.browser);
jquery-migrateではコンソール上にコードの中で実行された「jquery-migrate」で補完されている機能をエラーとして表示します。この表示はjquery-migrateの読み込み後に次のコードを実行することで非表示にできます。
jQuery.migrateMute=true
上記のエラー内容はjQuery.migrateWarningsというプロパティに格納されているため、コンソール上から「jQuery.migrateWarnings」をタイプするとコードの中で実行された「jquery-migrate」で補完されている機能を配列で教えてくれます。
また、jQuery.migrateReset()をコンソールから入力することで、jQuery.migrateWarningsの内容を初期化できます。
スポンサードリンク