幾つかのパフォーマンスとブラウザ互換の改善、 Attribute モジュールの大幅な書き換えがされた JQuery 1.6 がリリースされた。
新規リリースされた主な改善は以下になる。
-
attr() メソッドの Boolean 属性サポート
-
attr() メソッドと val() メソッドに対して、拡張を許すフックを追加
-
map()メソッドに対して、オブジェクト(map形式の JavaScript オブジェクト)のサポートを追加
-
CSS 機能の更新として、相対値 (“+=”, “-=”) が利用可能
-
コード量を抑え、可読性を向上させるため、 deferred.always()、 deferred.pipe() メソッドが追加された
-
同期アニメーション – 全てのアニメーションが同じ時間間隔で同期する。また、アニメーションは新ブラウザの機能を利用することで、より滑らかに動作する
これらの新機能の詳細は、バグフィックスの一覧とともに 公式のブログ投稿 で説明されている。
残念ながら、そこには更に別の変更点(breaking changes)がある。jQuery チーム は、これらの公式の更新を別セクションで区切り、強調して取り上げている。
変更 | 例) JQuery 1.5.2 | 例) JQuery 1.6 |
"-" が埋め込まれたキャメルケース data 属性値の data() メソッドでの取り扱い |
data-max-value="15" は { max-value: 15 } を生成 | data-max-value="15" は { maxValue: 15 } を生成 |
プロパティと属性の分離。 attr() メソッドはプロパティ値の取得には利用できない。プロパティ値を取り扱うために、 prop() メソッドや removeProp() メソッドが紹介されている。 | checkbox.attr("checked") は checkbox がチェックされている場合 (true) を返す |
checkbox.attr(“checked”) は空文字を返す。 要素クリックの内部イベントハンドラを用いる $(this).prop("checked") メソッドか $(this).is(":checked") メソッドを利用する必要がある。 |
二番目の変更は、既存のプロジェクトが jQuery 1.6 に更新する際、特に影響が大きいと予測される。
今回のリリースは jQuery 1.5 のリリースからちょうど3か月後になる。 jQuery 1.7 に向けての取り組みは既に開始されており、 JQuery チームは既に 機能提案 の受け入れを行っている。
JQuery は 、高速な Web 開発を行うために、HTML文書の取り扱い、イベントハンドリング、アニメーション、Ajax 通信を容易化する Java Script Library だ。