Firefox 11 for developers

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

ウェブ開発者向けの変更点一覧

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 で、defaultMutedloopmuted の各プロパティがサポートされました。
  • ある要素で element.mozRequestFullScreen() メソッドを呼び出したときに別の要素がすでにフルスクリーンモードであった場合は、document.mozCancelFullScreen() を呼び出すときに、前にフルスクリーンモードであった要素を復元するようになりました。
  • window.mozRequestAnimationFrame() メソッドは引数がない形式をサポートしなくなりました。このような形式はあまり使用されておらず、また標準化される見込みもありません。
  • 画像としての SVG が、canvas を汚染せずに canvas 内へ描画できるようになりました。
  • GeoPositionAddressインターフェイスの非標準プロパティである countryCode を削除しました。nsIDOMGeoPositionAddress をご覧ください。
  • Server-sent eventsCORS をサポートしました。
  • 従来、ユーザーがリンクをたどると window.navigator オブジェクトでセットしている値は新しいページが保持していました。これが、新しいページ用に新たな navigator オブジェクトを作成するようになりました。これにより、Firefox は他のブラウザーと同様に動作します。

CSS

SVG

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

WebSocket

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

IndexedDB

  • IDBFactory.cmp() がサポートされました。
  • IndexedDB のキー のタイプは、以下のいずれかにすることができます: (String や Integer だけでなく) Date、Arrays、Float。

Network

開発ツール

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 を示しているアドオンです。

参考