Firefox 11 for developers
Firefox 11 は米国時間 2012 年 3 月 13 日にリリースされました。この記事は Web 開発者とアドオン開発者向けに、今回のリリースにおける新機能と修正された重要なバグについての情報とより詳細なドキュメントへのリンクをまとめています。
Web 開発者向けの変更点一覧
HTML
DOM
- HTML の要素で
element.outerHTMLプロパティがサポートされました。 XMLHttpRequestが HTML のパース処理をサポートしました。- 同期リクエストの実行時における、
XMLHttpRequestresponseTypeおよび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(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 events が CORS をサポートしました。
- 従来、ユーザがリンクをたどると
window.navigatorオブジェクトでセットしている値は新しいページが保持していました。これが、新しいページ用に新たなnavigatorオブジェクトを作成するようになりました。これにより、Firefox は他のブラウザと同様に動作します。
CSS
text-size-adjust(en-US) プロパティがサポートされました。- CSS3 Conditional Rules のサポートが向上しました: @media、@-moz-document に入れ子構文を追加できます (CSS Syntax および CSS at-rules をご覧ください)。
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
- IDBFactory.cmp() (en-US) がサポートされました。
- IndexedDB のキー (en-US) のタイプは、以下のいずれかにすることができます: (String や Integer だけでなく) Date、Arrays、Float。
Network
- Firefox 8 で変更した、RFC 2231 および RFC 5987 でダブルクォートを区切り文字として利用できなくした点は、Outlook Web Access など一部のサイトで異常が発生するために取り消しました。
- HTTP ヘッダのユーザエージェント文字列に、携帯電話やタブレット上の Firefox がアクセスしているかをサーバが知ることができる識別子を含むようになりました。
開発ツール
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を実装することが必要です。
削除されたインタフェース
以下のインタフェースは、不要になったため削除されました:
nsICharsetResolvernsIDOMNSElement、詳しくは bug707576 をご覧いただき、代わりにnsIDOMElementを使用してください。
テーマに関する変更
omni.jarファイルは名前をomni.jaに変更しました。
設定項目の変更
ui.tooltipDelay-
マウスカーソルを載せてからツールチップが表示されるまでの遅延をミリ秒単位で指定します。
ビルドシステムの変更
--enable-tracejitビルドオプションを削除しました。
その他の変更
- 長く更新されていないアドオンは、デフォルトで互換性があると判断しないようになりました。現時点では、
maxVersionが 4.0 を示しているアドオンです。