Firefox 11 は米国時間 2012 年 3 月13日にリリースされました。この記事は Web 開発者とアドオン開発者向けに、今回のリリースにおける新機能と修正された重要なバグについての情報とより詳細なドキュメントへのリンクをまとめています。
Web 開発者向けの変更点一覧
HTML
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 イベント、UIEvent
、MouseEvent
) がサポートされました。 Battery API
がデフォルトで有効になりました。HTMLMediaElement
で、defaultMuted
、loop
、muted
の各プロパティがサポートされました。- ある要素で
element.mozRequestFullScreen()
メソッドを呼び出したときに別の要素がすでにフルスクリーンモードであった場合は、document.mozCancelFullScreen()
を呼び出すときに、前にフルスクリーンモードであった要素を復元するようになりました。 window.mozRequestAnimationFrame()
メソッドは引数がない形式をサポートしなくなりました。このような形式はあまり使用されておらず、また標準化される見込みもありません。- 画像としての SVG が、canvas を汚染せずに canvas 内へ描画できるようになりました。
GeoPositionAddress
インタフェースの非標準プロパティであるcountryCode
を削除しました。nsIDOMGeoPositionAddress
をご覧ください。- Server-sent events が CORS をサポートしました。
- 従来、ユーザがリンクをたどると
window.navigator
オブジェクトでセットしている値は新しいページが保持していました。これが、新しいページ用に新たなnavigator
オブジェクトを作成するようになりました。これにより、Firefox は他のブラウザと同様に動作します。
CSS
text-size-adjust
プロパティがサポートされました。- CSS3 Conditional Rules のサポートが向上しました: @media、@-moz-document に入れ子構文を追加できます (CSS Syntax および CSS at-rules をご覧ください)。
SVG
SVGSVGElement
DOM インタフェースがgetElementById
メソッドをサポートしました。
WebSocket
- WebSocket API がバイナリ形式のメッセージをサポートしました (バグ 676439 を参照)。
- プロトコルおよび API が最新のドラフト仕様に更新され、また API から接頭辞が除去されました (バグ 666349 および バグ 695635 を参照)。
- 以前 Firefox では WebSockets で送受信するメッセージのサイズが 16 MB に制限されていましたが、この制限を 2 GB に引き上げました (メモリ容量の制限で大きなデータを扱えない場合もありますが、Firefox は 2 GB までサポートします)。
IndexedDB
- IDBFactory.cmp() がサポートされました。
- IndexedDB のキー のタイプは、以下のいずれかにすることができます: (String や Integer だけでなく) Date、Arrays、Float。
Network
- Firefox 8 で変更した、RFC 2231 および RFC 5987 でダブルクォートを区切り文字として利用できなくした点は、Outlook Web Access など一部のサイトで異常が発生するために取り消しました。
- HTTP ヘッダのユーザエージェント文字列に、携帯電話やタブレット上の Firefox がアクセスしているかをサーバが知ることができる識別子を含むようになりました。
開発ツール
- システムが 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 を示しているアドオンです。