jQuery 1.9.0でなくなった機能を補完する「jquery-migrate」

Check このエントリーをはてなブックマークに追加

配布元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の内容を初期化できます。

スポンサードリンク

コメント

カテゴリー:jQuery ライブラリ 拡張