Firefox 11 for developers

Firefox 11 は米国時間 2012 年 3 月 13 日にリリースされました。この記事は Web 開発者とアドオン開発者向けに、今回のリリースにおける新機能と修正された重要なバグについての情報とより詳細なドキュメントへのリンクをまとめています。

Web 開発者向けの変更点一覧

HTML

  • <audio> 要素と <video> 要素に、muted 属性と loop 属性が実装されました。

DOM

  • HTML の要素で element.outerHTML プロパティがサポートされました。
  • XMLHttpRequest が HTML のパース処理をサポートしました。
  • 同期リクエストの実行時における、XMLHttpRequest responseType および withCredentials 属性の使用のサポートを削除しました。属性の使用を試みると、NS_ERROR_DOM_INVALID_ACCESS_ERR 例外が発生します。この変更は、W3C へ標準化の提案が行われました。
  • バイブレーションをサポートするデバイスでバイブレーションを行う window.navigator.mozVibrate() をサポートしました。Gecko では mozVibrate() として実装しています。
  • window.navigator.mozApps は、Open Web Applications のインストールや管理に用いることができる Apps オブジェクトを返します。
  • MozBeforePaint イベントは発生しなくなりました。mozRequestAnimationFrame() でこのイベントを使用している場合は、代わりにコールバック関数を渡してください。
  • アニメーションフレームの要求をキャンセルする機能をサポートしました。window.mozRequestAnimationFrame() はリクエスト ID を返すようになり、要求をキャンセルするにはこの値を window.mozCancelAnimationFrame() に渡します。
  • DOM4 仕様書で導入されたいくつかの Event コンストラクタ (Event、HTML イベント、 UIEventMouseEvent) がサポートされました。
  • Battery API がデフォルトで有効になりました。
  • HTMLMediaElement (en-US) で、defaultMuted (en-US)loop (en-US)muted (en-US) の各プロパティがサポートされました。
  • ある要素で element.mozRequestFullScreen() (en-US) メソッドを呼び出したときに別の要素がすでにフルスクリーンモードであった場合は、document.mozCancelFullScreen() (en-US) を呼び出すときに、前にフルスクリーンモードであった要素を復元するようになりました。
  • window.mozRequestAnimationFrame() メソッドは引数がない形式をサポートしなくなりました。このような形式はあまり使用されておらず、また標準化される見込みもありません。
  • 画像としての SVG が、canvas を汚染せずに canvas 内へ描画できるようになりました。
  • GeoPositionAddressインタフェースの非標準プロパティである countryCode を削除しました。nsIDOMGeoPositionAddress をご覧ください。
  • Server-sent eventsCORS をサポートしました。
  • 従来、ユーザがリンクをたどると window.navigator オブジェクトでセットしている値は新しいページが保持していました。これが、新しいページ用に新たな navigator オブジェクトを作成するようになりました。これにより、Firefox は他のブラウザと同様に動作します。

CSS

SVG

  • SVGSVGElement (en-US) DOM インタフェースが getElementById メソッドをサポートしました。

WebSocket

  • WebSocket API がバイナリ形式のメッセージをサポートしました (Firefox バグ 676439 を参照)。
  • プロトコルおよび API が最新のドラフト仕様に更新され、また API から接頭辞が除去されました (Firefox バグ 666349 および Firefox バグ 695635 を参照)。
  • 以前 Firefox では WebSockets で送受信するメッセージのサイズが 16 MB に制限されていましたが、この制限を 2 GB に引き上げました (メモリ容量の制限で大きなデータを扱えない場合もありますが、Firefox は 2 GB までサポートします)。

IndexedDB

Network

開発ツール

  • システムが WebGL をサポートしている場合は、ページ調査ツール3D ビュー を提供します。
  • 新しいツールである スタイルエディタ は、リアルタイムな CSS スタイルシートの変更や作成を自由自在に行う機能を提供します。
  • ソース表示機能 が従来の HTML パーサーに代わり新しい HTML5 パーサーを使用するようになりました。

Mozilla 開発者とアドオン開発者向けの変更点

JavaScript code modules

NetUtil.jsm

  • readInputStreamToString() へ新たに、入力ストリームを読み取る際のキャラクタセットの解釈を設定するための、省略可能なパラメータが追加されました。

新しい JavaScript code modules

source-editor.jsm

アドオンで利用可能な、便利で使いやすいソースコードエディタを提供します。これは スクラッチパッド など Firefox に統合している開発ツールで使用しているものと同じです。

インタフェースの変更

  • mozIAsyncHistory インタフェースに、ある URI が訪問済みであるかを確認するためのメソッド mozIAsyncHistory.isURIVisited が追加されました。
  • mozIAsyncHistory.isURIVisited でコールバックハンドリング機能を提供するため、新たに mozIVisitStatusCallback インタフェースを追加しました。
  • nsIMacDockSupport インタフェースが新属性 badgeText を用いて、Dock のアプリケーションアイコンへのテキスト追加をサポートしました。
  • nsINavHistoryResultObserver インタフェースでは、非推奨になった containerOpened() および containerClosed() メソッドに代わり nsINavHistoryResultObserver.containerStateChanged を実装することが必要です。

削除されたインタフェース

以下のインタフェースは、不要になったため削除されました:

  • nsICharsetResolver
  • nsIDOMNSElement、詳しくは bug707576 をご覧いただき、代わりに nsIDOMElement を使用してください。

テーマに関する変更

  • omni.jar ファイルは名前を omni.ja に変更しました。

設定項目の変更

ui.tooltipDelay

マウスカーソルを載せてからツールチップが表示されるまでの遅延をミリ秒単位で指定します。

ビルドシステムの変更

  • --enable-tracejit ビルドオプションを削除しました。

その他の変更

  • 長く更新されていないアドオンは、デフォルトで互換性があると判断しないようになりました。現時点では、maxVersion が 4.0 を示しているアドオンです。

参考