Firefox 41 for developers
Firefox 41 は、米国時間 2015 年 9 月 22 日にリリースされました。このページでは、開発者に影響する Firefox 41 の変更点をまとめています。
ウェブ開発者向けの変更点一覧
開発者ツール
ハイライト:
- DOM ノードのスクリーンショットを撮影する
- HAR としてコピー/HAR として保存
- ルールビューの "Add Rule" ボタン
- タブでソースを表示 (デフォルトは無効)
- CSS ルールのコピー方法を追加
- ルールビューで画像を data: URI としてコピー
- CSP の情報を表示するコマンドを GCLI に追加
Firefox 40 から Firefox 41 の間に解決した開発ツール関連のバグ一覧: これらのバグの多く (特にパフォーマンスツールに関するバグ) の修正は Firefox 40 に前倒しされました。
CSS
-
縦書き文章のレイアウト機能を、デフォルトで有効にしました (Firefox バグ 1138384)。以下の CSS プロパティが使用可能になりました:
- 書字方向を選択する:
writing-mode
- 文字の向きを制御する:
text-orientation
. - 方向に依存しない
width
およびheight
:block-size
およびinline-size
- 方向に依存しない
min-width
およびmin-height
:min-block-size
およびmin-inline-size
- 方向に依存しない
max-width
およびmax-height
:max-block-size
およびmax-block-size
- 方向に依存しない
margin-top
、margin-right
、margin-bottom
、margin-left
:margin-block-start
、margin-block-end
、margin-inline-start
、margin-inline-end
- 方向に依存しない
padding-top
、padding-right
、padding-bottom
、padding-left
:padding-block-start
、padding-block-end
、padding-inline-start
、padding-inline-end
- 方向に依存しない
border-top
、border-right
、border-bottom
、border-left
および幅、スタイル、色を個別に指定するプロパティ:border-block-start
、border-block-start-width
、border-block-start-style
、border-block-start-color
、border-block-end
、border-block-end-width
、border-block-end-style
、border-block-end-color
、border-inline-start
、border-inline-start-width
、border-inline-start-style
、border-inline-start-color
、border-inline-end
、border-inline-end-width
、border-inline-end-style
、border-inline-end-color
- 方向に依存しない
top
、right
、bottom
、left
:offset-block-start
、offset-block-end
、offset-inline-start
、offset-inline-end
- 書字方向を選択する:
-
SVG で
transform-origin
プロパティをサポートしました。また、transform-box
プロパティを実装しました (Firefox バグ 923193)。
HTML
href
属性を持たない<a>
は、インタラクティブコンテンツとして分類しないようになりました。<label>
要素内でクリックすると、ラベル付けされたコンテンツがアクティブになります (Firefox バグ 1167816)。- サイトアイコン (favicon およびショートカットアイコン) で、SVG アイコンをサポートしました (Firefox バグ 366324)。
- <link rel='preconnect'> で、
crossorigin
属性をサポートしました (Firefox バグ 1174152)。 - picture 要素がリサイズやビューポートの変化に反応しない問題を修正しました (Firefox バグ 1135812)。
JavaScript
Date.prototype
はDate
のインスタンスではなく、通常のオブジェクトになりました (Firefox バグ 861219)。Date.prototype.toString
は、ジェネリックなメソッドになりました (Firefox バグ 861219).Symbol.species
を追加しました (Firefox バグ 1131043)。Map[Symbol.species]
およびSet[Symbol.species]
ゲッタを追加しました (Firefox バグ 1131043)。- 非標準の let 式を廃止しました (Firefox バグ 1023609)。
- 既定値の代入を含む、分割された引数をサポートしました (Firefox バグ 1018628)。
- ES6 に従い、メソッドの定義で波括弧が必要になりました。波括弧を欠いた構文はエラーになります (Firefox バグ 1150855)。
- コンストラクター形式のメソッド定義 (ジェネレーターメソッドを除く) は不可になりました (Firefox バグ 1059908 および Firefox バグ 1166950)。
- ES6 使用への準拠の一環として
([a, b]) = [1, 2]
や({a, b}) = { a: 1, b: 2 }
といった、括弧でくくるパターンの destructuring 構文は無効と判断され、SyntaxError
が発生するようになりました。詳しくは Jeff Walden のブログ記事 をご覧ください。 new.target
構文をサポートしました (Firefox バグ 1141865)。
インターフェイス/API/DOM
HTML Editing API
-
切り取り、コピー、貼り付けのコマンド制御を改良して、JS プログラムからウェブコンテンツのコピーや切り取りが可能になりました:
Document.queryCommandSupported()
に引数として'paste'
コマンドを与えると、実際に操作を行うための十分な権限がない場合にfalse
を返します (Firefox バグ 1161721)。Document.queryCommandSupported()
に引数として'cut'
または'copy'
を与えると、ユーザーが起動したコードや権限を持つコードのコンテキスト内で呼び出された場合にtrue
を返すようになりました (Firefox バグ 1162952)。- 引数として
'cut'
または'copy'
を与えたDocument.execCommand()
は動作しますが、ユーザーが起動したコードや権限を持つコードのコンテキスト内で呼び出された場合に限ります (Firefox バグ 1012662)。 Document.execCommand()
でコマンドが未サポートまたは無効である場合に、例外が発生しないようになりました (Firefox バグ 1027560)。
イベント
- 非標準の
CloseEvent.initCloseEvent()
メソッド、およびEvent.createEvent('CloseEvent')
メソッドを使用してCloseEvent
を生成する機能を削除しました。代わりに、標準のコンストラクターであるCloseEvent()
を使用してください (Firefox バグ 1161950)。 - デスクトップ版の Nightly で、
PointerEvent
がデフォルトで有効になりました。Developer Edition、Beta、Release では無効であり、少なくともいくつかのバージョンの間は有効化しない予定です。(Firefox バグ 1166347) - 接頭辞なしの
MouseEvent.movementX
およびMouseEvent.movementY
を追加しました。接頭辞つきのプロパティは非推奨になり、将来のある時点で削除する予定です (Firefox バグ 1164981)。
Web Crypto
SubtleCrypto.importKey()
およびSubtleCrypto.exportKey()
でECDH
鍵をサポートしました (Firefox バグ 1050175)。
Canvas API
HTMLCanvasElement.captureStream()
およびCanvasCaptureMediaStream
を追加して、<canvas>
の表示内容をリアルタイムに流すことが可能になりました (Firefox バグ 1032848)。MediaStream.id
が、ストリームのユニークな ID を返すようになりました (Firefox バグ 1089798)。CanvasRenderingContext2D.filter
の初期値が、正しくnone
が設定されるようになりました (Firefox バグ 1163124)。
Service Worker
-
Service Worker の実験的な実装を改良しました:
ServiceWorkerGlobalScope.skipWaiting()
を実装しました (Firefox バグ 1131352)。Clients.claim()
を追加しました (Firefox バグ 1130684)。- Service Worker で機能する上記以外のイベントは
ExtendableEvent
から継承しており、waitUntil()
メソッドにアクセスできます (Firefox バグ 1160527)。
-
CacheStorage
およびCache
インターフェイスをサポートしました (Firefox バグ 1110144)。
WebGL
- WebGL コンテキスト属性
failIfMajorPerformanceCaveat
を追加しました。また、システムのパフォーマンスが低い場合にコンテキスト生成を失敗させることを示すために、HTMLCanvasElement.getContext()
で WebGL コンテキストを生成する際にこの属性を設定できるようになりました (Firefox バグ 1164970)。
その他
- OS X および Windows で、
Navigator.onLine
はネットワーク接続の状態に応じて変化するようになりました (以前は "オフライン作業" モードを選択しなければ常にtrue
を返していました) (Firefox バグ 654579)。 MessagePort
およびMessageChannel
が Web workers で使用可能になりました。また、デフォルトですべての状況で有効になりました (Firefox バグ 952139 および Firefox バグ 911972)。- User Timing API が Web workers で使用可能になりました (Firefox バグ 1155761)。
- 通知 API が Web workers で使用可能になりました (Firefox バグ 916893)。
DOMRequest
およびDOMCursor
が Web workers で使用可能になりました (Firefox バグ 1167650)。- CSS Font Loading API を全面的に実装して、デフォルトで有効にしました (Firefox バグ 1149381)。
- Shared workers が、プライベートドキュメント (すなわち、プライベートウィンドウで開いているドキュメント) と非プライベートドキュメントとの間で共有されないようになりました (Firefox バグ 1177621)。
URLUtilsSearchParams.searchParams
プロパティが読み取り専用になりました (Firefox バグ 1174731)。URLUtils.hash
プロパティが、URL フラグメントをデコードしないようになりました (Firefox バグ 1093611)。
MathML
新たな既定フォントとフォールバックフォントの制御
数式では特別なフォントが必要です。これまで、そのフォントは mathml.css
ユーザーエージェントスタイルシート (<math>
タグに font-family を設定) および設定項目 font.mathfont-family
(伸縮する大型演算子で使用するフォールバックフォントを設定) でハードコードされていました。Firefox 41 より <math>
タグへ自動的に設定される x-math
内部言語と、それに対応する設定項目 (例えば font.name.serif.x-math
) を導入しました。ユーザーエージェントスタイルシートでは <math>
タグの font-family を serif に設定して、設定項目 font.mathfont-family
を font.name.serif.x-math
で置き換えました。また、すべてのプラットフォームで、フォールバックフォントは基本的に "Latin Modern Math" が先頭にある同一のリストを使用するようになりました。既定フォント/フォールバックフォントは、標準の言語別フォント設定メニューで設定できます。詳しくは Firefox バグ 947654 および Firefox バグ 1160456 をご覧ください。
SVG
- サイトアイコン (favicon、ショートカットアイコン) で SVG をサポートしました (Firefox バグ 366324)。
Audio/Video
- 設定項目
media.autoplay.enabled
が、信頼されていないHTMLMediaElement.play()
の起動 (ユーザー以外が作動したスクリプトから呼び出される場合) に対しても適用されるようになりました (Firefox バグ 659285)。
ネットワーク
X-Content-Duration
ヘッダーのサポートを廃止しました (Firefox バグ 1160695)。- HTTP/2 プロトコルの草案版のサポートを廃止しました (Firefox バグ 1132357)。
セキュリティ
- CSP 1.1 の
manifest-src
ディレクティブをサポートしました (Firefox バグ 1089255)。
アドオン開発者と Mozilla 開発者向けの変更点
XUL
変更なし。
JavaScript コードモジュール
変更なし。
XPCOM
変更なし。
インターフェイス
変更なし。
その他
- window のルートウィジェットを
<canvas>
に描画するための、新たな chrome コンテキスト限定の内部 API であるCanvasRenderingContext2D.drawWidgetAsOnScreen()
を追加しました。この API は、オンスクリーンのウィジェットを取得するために OS を使用します。詳しくは Firefox バグ 1167477 をご覧ください。
関連情報
過去のバージョン
- 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
- Firefox 14 for developers
- Firefox 13 for developers
- Firefox 12 for developers
- Firefox 11 for developers
- Firefox 10 for developers