Firefox 46 for developers
Firefox の最新の開発者向け機能を試すには、 Firefox Developer Edition をインストールしてください。Firefox 46 は、米国時間 2016 年 4 月 26 日にリリースされました。この記事では、ウェブ開発者だけでなく、 Firefox や Gecko の開発者、アドオン開発者にとっても有用な主な変更点を挙げています。
ウェブ開発者向けの変更点一覧
開発者ツール
HTML
<ul>
でtype
の値が無効であるときはdecimal
を割り付けず、type
の値が指定されていないとみなすようになりました (Firefox バグ 241719)。<input>
のpattern
属性は、"u"
(unicode) フラグを付与した正規表現として扱うようになりました (Firefox バグ 1227906)。
CSS
-
CSS グリッドの実装を更新しました。
- キーワード
auto-fill
およびauto-fit
を、repeat()
関数内で使用できるようになりました (Firefox バグ 1118820)。 - 値
true
をunsafe
に改名しました。これはjustify-content
、align-content
、justify-self
、align-self
、justify-items
、align-items
の各プロパティに影響します (Firefox バグ 1230478)。
- キーワード
-
text-emphasis
、text-emphasis-style
、text-emphasis-color
、text-emphasis-position
の各プロパティを、既定で有効にしました (Firefox バグ 1231485)。 -
Gecko が、
-webkit-
接頭辞を付加した 数種類のプロパティ を受け入れるようになりました。ただしlayout.css.prefixes.webkit
をtrue
に切り替えなければなりません (Firefox バグ 1213126)。 -
(
@font
の)font-display
記述子を実験的に実装しました。使用するにはlayout.css.font-display.enabled
をtrue
に切り替えなければなりません (Firefox バグ 1157064)。 -
3D Transform のサポートを表すメディアクエリーとして
@media (-webkit-transform-3d)
に対応しました。ただし about:config の設定layout.css.prefixes.webkit
をtrue
に切り替えなければなりません (Firefox バグ 1239799)。 -
linear-gradient()
で、0deg
の単位を省略した表記に対応しました (Firefox バグ 1239153)。 -
ウェブ互換性のため、
-webkit-filter
を追加しました。設定項目layout.css.prefixes.webkit
で制御しており、既定値はfalse
です (Firefox バグ 1236506)。 -
[css-align] "unsafe start" (以前は "true start") を "start" などにシリアライズするようになりました (Firefox バグ 1230398)。
JavaScript
- ES2015 の、RegExp の unicode (u) フラグを実装しました (Firefox バグ 1135377)。
- ES2015 のブロックレベル関数を実装しました (Firefox バグ 1071646)。
- ES2015 の
TypedArray.prototype.sort()
メソッドを実装しました (Firefox バグ 1121937)。 - ES2015 の
arguments[Symbol.iterator]
を実装しました (Firefox バグ 1067049)。 - EcmaScript Shared Memory API を実験的に実装しました。
SharedArrayBuffer
およびAtomics
オブジェクトをご覧ください。この実験的な API を使用するには、about:config でjavascript.options.shared_memory
にtrue
を設定します。 - ECMAScript 仕様に従い、
[let](/ja/docs/Web/JavaScript/Reference/Statements/let)
および[const](/ja/docs/Web/JavaScript/Reference/Statements/const)
によって変数を再宣言するとTypeError
ではなくSyntaxError
が発生するようになりました (Firefox バグ 1198833)。 - 厳格モードにおいて、プリミティブ値にプロパティを設定すると
TypeError
が発生するようになりました (Firefox バグ 603201)。 - 非標準の
WeakMap.prototype.clear()
およびWeakSet.prototype.clear()
メソッドを削除しました (Firefox バグ 1101817)。 - 非標準の
RegExp.multiline
プロパティが非推奨になりました (Firefox バグ 1220457)。 - 組み込みアクセサー関数の名称に "get" または "set" 接頭辞を付加しました (Firefox バグ 1180290、Firefox バグ 1235656)。
- JS1.7/JS1.8 (旧式) の配列内包 および JS1.7/JS1.8 (旧式) のジェネレーター内包 を削除しました (Firefox バグ 1220564)。
インターフェイス/API/DOM
DOM & HTML DOM
- 非推奨の
Window.showModalDialog()
メソッドが、マルチプロセスモード (e10s) の Firefox で使用できなくなりました (Firefox バグ 1234700)。 Document.elementsFromPoint
に対応しました (Firefox バグ 1164427)。<select>
要素に存在しない option をプログラムで選択したときに誤って何も変更しないままにしていましたが、selectedIndex
の値を-1
に、selectedOptions
を空のHTMLCollection
に、そしてvalue
を空文字列に変更するようになりました (Firefox バグ 1203668)。
Canvas
- 実験的な
OffscreenCanvas
API で未実装であった部分を実装しました。新機能:OffscreenCanvas()
コンストラクター、OffscreenCanvas.toBlob()
、OffscreenCanvas.transferToImageBitmap()
。これらの実験的な API を使用するには、about:config でgfx.offscreencanvas.enabled
をtrue
に設定します (Firefox バグ 1172796)。 ImageBitmap.close()
メソッドに対応しました (Firefox バグ 1172796)。- 新たなレンダリングコンテキスト
ImageBitmapRenderingContext
を実装しました。このコンテキストを得るには、OffscreenCanvas.getContext()
またはHTMLCanvasElement.getContext()
で"bitmaprenderer"
を指定します (Firefox バグ 1172796)。
WebGL
WEBGL_compressed_texture_etc
拡張を実装しました。ETC2 テクスチャ圧縮方式 を使用できます (Firefox バグ 917505)。この拡張を使用するには、about:config でwebgl.enable-draft-extensions
をtrue
に設定してください。
IndexedDB
変更なし。
サービスワーカー
FetchEvent.request
を、null にしてはいけないようにしました (Firefox バグ 1238213)。Navigator.serviceWorker
を SameObject としてマークしました (Firefox バグ 1238205)。ExtendableMessageEvent.ports
を SameObject としてマークしました (Firefox バグ 1238225)。
Fetch
Request.mode
で、新しい値navigate
が使用可能になりました。ドキュメント間のナビゲート中のリクエスト生成に対応します (Firefox バグ 1209081)。
WebRTC
RTCPeerConnection.createOffer()
メソッドが VP9 ビデオコーデックに対応するようになりましたが、これは既定では無効になっています。有効にするには、about:config
でmedia.peerconnection.video.vp9_enabled
設定をtrue
に設定します。有効化すると、VP9 が優先されるコーデックになります。以前は VP8 が優先されていました (Firefox バグ 1242324)。RTCRtpSender.setParameters()
というメソッドを追加し、RTCRtpSender
を最初に作成した後に引数の値を変更できるようにしました。
新規 API
- SVG で、
SVGStyleElement
インターフェイスにLinkStyle
を実装しました (Firefox バグ 1239128)。
その他
-
非同期の
FileReader
を、Web workers で使用できるようになりました (Firefox バグ 901097)。 -
Web Animations API の実験的な実装を更新しました。
-
権限 API が、Nightly だけでなくすべてのリリース版で、既定で有効になりました (Firefox バグ 1221106)。
-
WOFF フォントのサニタイズ処理を、少々緩和しました (Firefox バグ 1244693)。
MathML
変更なし。
SVG
変更なし。
Audio/Video
変更なし。
HTTP
変更なし。
ネットワーク
- RFC 7686 に対応しました。既定では、TLD が
.onion
であるドメインの名前解決を試みません。これは設定項目network.dns.blockDotOnion
で制御します。Tor に対応するアドオンは、この設定を変更できます (Firefox バグ 1228457)。
セキュリティ
変更なし。
アドオン開発者と Mozilla 開発者向けの変更点
インターフェイス
変更なし。
XUL
変更なし。
JavaScript コードモジュール
変更なし。
XPCOM
変更なし。
その他
変更なし。
過去のバージョン
- Firefox 45 for developers
- Firefox 44 for developers
- Firefox 43 for developers
- Firefox 42 for developers
- Firefox 41 for developers
- Firefox 40 for developers
- Firefox 39 for developers
- Firefox 38 for developers
- Firefox 37 for developers
- Firefox 36 for developers
- Firefox 35 for developers
- Firefox 34 for developers
- Firefox 33 for developers
- Firefox 32 for developers
- Firefox 31 for developers
- Firefox 30 for developers
- Firefox 29 for developers
- Firefox 28 for developers
- Firefox 27 for developers
- Firefox 26 for developers
- Firefox 25 for developers
- Firefox 24 for developers
- Firefox 23 for developers
- Firefox 22 for developers
- Firefox 21 for developers
- Firefox 20 for developers
- Firefox 19 for developers
- Firefox 18 for developers
- Firefox 17 for developers
- Firefox 16 for developers
- Firefox 15 for developers