Firefox 13 for developers
=========================

Firefox 13 は 米国時間 2012 年 6 月 5 日にリリースされました。この記事は開発者に影響がある Firefox 13 での変更点をまとめています。

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

### HTML

* テーブルの `cellspacing` 属性は、Quirks モード以外でも Quirks モードと同様に解析するようになりました。これは値をパーセント値で指定した場合に、仕様書で実際はパーセント値が認められていないため代わりにピクセル数として扱うものです。
* `<wbr>` 要素の双方向テキストに関する動作を修正しました。Unicode の `U+200B ZERO-WIDTH SPACE` 文字と同様の動作になり、従って親要素の双方向性に影響を与えません。
* `:invalid` 疑似クラスを `<form>` 要素へ適用できるようになりました。
### CSS

* `<angle>` の単位 `turn` をサポートしました (`rotate()` などの CSS 関数で用います)。
* `background-position` で値を 3 - 4 個置く構文をサポートしました。"`right 10px bottom 20px`" といった表記で、背景画像を任意の角からずらすことができます。Firefox バグ 522607 をご覧ください。
* `background-repeat` で値を 2 個置く構文をサポートしました。
* `-moz-border-radius*` および `-moz-box-shadow` のサポートを削除しました。代わりに著作者は接頭辞のない `border-radius` または `box-shadow` を使用してください。Firefox バグ 693510 をご覧ください。
* `column-fill` プロパティが実装されました。（接頭辞付き）
### JavaScript

* ECMAScript 6 の `for..of` 構造をサポートしました。
* ECMAScript 6 の `Map` と `Set` オブジェクトの実験的サポートを実装しました。
### DOM

* DOM4 の規定により、`Node.cloneNode()` メソッドの引数 `deep` は省略可能になりました。
* `window.setTimeout()` および `window.setInterval()` メソッドは、付加的な引数である "遅延" をコールバックルーチンに渡さないようになりました。
* `Blob.mozSlice()` メソッドの接頭辞を削除しました。
* `Blob` コンストラクタをサポートしました。
* `globalStorage` のサポートを削除しました。
* バックグラウンドの処理の状態や結果を報告するために用いる `DOMRequest` インタフェースを新たに追加しました。
* `HTMLOptionElement.index()` メソッドは、`<option>` が `<datalist>` HTML 要素の内部にあるときに誤った値 `-1` ではなく `0` を返すようになりました。
* `DOMException` のうち DOM Level 4 で定義された部分を実装しました。
* 最新の File API 仕様での `DOMError` の定義に賛同して、`FileError` インタフェースを削除しました。
* `Range` オブジェクトは `RangeException` 例外を投げなくなりました。代わりに DOM4 で定義された `DOMException` を用います。
* `element.getAttributeNS()` は存在しない属性について空の文字列に代わり常に `null` を返すようになりました。以前は、空の文字列が返る場合がありました。存在しない属性には空の文字列ではなく null を返すべきであるという現在の DOM4 仕様に従います。
* `HTMLCanvasElement` インタフェースに非標準の `mozFetchAsStream()` メソッドを追加しました。これは当該要素の画像データを指定した形式で含む入力ストリームを提供します。
### UA 文字列

* Android 版 Firefox は、フォームファクタを示すため UserAgent 文字列に Tablet または Mobile のトークンを含むようになり、Fennec トークンは持たなくなりました。また "Gecko/" に続く数値は、フリーズした日付から Gecko のバージョン番号に変わります。
* UA 文字列では、Gecko のパッチ番号やリリース状況をバージョン番号で公開しないようになりました。バージョン番号は常に "X.Y" という形式になり、X はメジャーリリース番号、Y はマイナー番号を表します。例えば、"13.0" や "14.1" となります。"14.0.1b1" のようにはなりません。
### SVG

* `SVGStringList` DOM インタフェースが `Array` と同様に添字を利用可能になりました。Firefox バグ 722071 をご覧ください。
### WebGL

* `EXT_texture_filter_anisotropic` 拡張のサポートを追加しました。異方性テクスチャフィルタリングは、テクスチャが貼り付けられた斜めのプリミティブを表示する際のミップマップテクスチャのアクセスの品質を向上させます。
### MathML

* `<mtable>` 要素で `width` 属性をサポートしました (Firefox バグ 722880)。
* 数学的なテキストで MathJax fonts をデフォルトフォントとして使用するようになりました。詳しくは Fonts for Mozilla's MathML engine をご覧ください。
### Developer tools

#### 3D ビューの改良

* "f" キーを押すと、選択中のノードが見えるように位置を調整することができます。

#### スタイルパネルの改良

* スタイルパネル でルールの見出しをクリックすると、対応する CSS を スタイルエディタ で開くようになりました。
* スタイルパネル でルールを右クリックすると、そのルールをクリップボードへコピーできるようになりました。
* 未知のプロパティ名や誤った値を入力すると、プロパティの隣に警告アイコンを表示します。

#### スクラッチパッドの改良

* スクラッチパッド のヘルプメニューに、MDN のスクラッチパッドに関する文書を開くための項目を追加しました。
Mozilla 開発者とアドオン開発者向けの変更点
-------------------------

### 互換性情報

Firefox 13 より、Windows 版の Firefox は Windows XP Service Pack 2 以降を要求します。従って、 Windows 2000 や古いバージョンの Windows XP では動作しません。

### JavaScript code modules

#### source-editor.jsm

* ソースエディタの API に、ダーティフラグのサポートを追加しました。
* ソースエディタは、Orion を利用せずに `<textarea>` へフォールバックする動作をサポートしなくなりました。
* エディタが focus と blue のイベントを公開するようになりました。
* `getIndentationString()` メソッドを追加しました。これは、エディタでテキストのインデントに使用する文字を返します。
* ソースエディタで、ブレークポイントのリストの管理とブレークポイントのオン・オフを切り替えるユーザインタフェースの表示をサポートしました。ただし実際は、ブレークポイントを実装していません。そのためのデバッガのコードを記述するのはあなた次第です。
* `highlightCurrentLine` 設定オプションを用いて、カレント行をハイライトする機能をサポートしました。
### ARIA

* CSS プロパティ `margin-left`、`margin-right`、`margin-top`、および `margin-bottom` はすべて、同じ名前で ARIA オブジェクトに反映されます。詳しくは Gecko object attributes をご覧ください。
### インタフェースの変更

* `nsIScreen` インタフェースが、新たに引数 `rotation` を通して回転の制御をサポートしました。
* `nsIPrefBranch2` インタフェースを `nsIPrefBranch` に統合しました (Firefox バグ 718255)。
* 以前のバージョンの Gecko で削除されたエイリアス `MozOpacity`、`MozOutline`、`MozOutlineStyle`、`MozOutlineWidth`、`MozOutlineOffset`、および `MozOutlineColor` を、`nsIDOMCSS2Properties` から削除しました。これは、エイリアスを削除した当初に行うべきでした。
* `nsINavHistoryQueryOptions` の属性 `excludeItemIfParentHasAnnotation` を、対応するクエリ操作と共に削除しました。これはライブブックマークのサポート用に存在しましたが、もはや存在しません。
関連記事
----

* Firefox 12 for developers
* Firefox 11 for developers
* Firefox 10 for developers
* Firefox 9 for developers
* Firefox 8 for developers
* Firefox 7 for developers
* Firefox 6 for developers
* Firefox 5 for developers
* Firefox 4 for developers
* Firefox 3.6 for developers
* Firefox 3.5 for developers
* Firefox 3 for developers
* Firefox 2 for developers
* Firefox 1.5 for developers