Firefox 66 for developers
Firefox 66 は、米国時間 2019 年 3 月 19 日 にリリースされました。このページでは、開発者に影響する Firefox 66 の変更点をまとめています。
ウェブ開発者向けの変更点一覧
開発者ツール
- ウェブコンソール の自動補完のポップアップから、JavaScript のゲッターを実行できるようになりました (Firefox バグ 1499289)。
- Window の
alert()
、prompt()
、confirm()
メソッドがレスポンシブデザインモード で動作しなくなっていたのを、再び動作するようになりました (Firefox バグ 1273997)。 - コンソールの出力を右クリックして "表示メッセージをクリップボードにエクスポートする" を選択すると、コンソールの出力をクリップボードにコピーできます。
HTML
file:
URL から読み込んだ UTF-8 エンコードされた HTML (およびプレーンテキスト) ファイルについて、<meta charset="utf-8">
または UTF-8 BOM がないものもサポートしました。このようなファイルをサーバーにアップロードする前に、ローカル環境で作業しやすくするためです。サーバーでは、このようなファイルにContent-Type
HTTP ヘッダーでcharset=utf-8
を送信しなければなりません。ローカルファイルで使用する検出方法は、ネットワーク環境の逐次読み込みで問題が発生します (Firefox バグ 1071816)。
廃止
<input>
要素からx-moz-errormessage
属性を削除しました (Firefox バグ 1513890)。独自の検証メッセージを実装するには、代わりに制約検証機能を使用してください。
CSS
-
スクロールアンカリングを、デスクトップ版 Firefox に実装しました (モバイル版は未実装です)。
overflow-anchor
プロパティを含みます (Firefox バグ 1305957)。 -
属性セレクター で、大文字・小文字の区別に関する修飾子
s
をサポートしました (Firefox バグ 1512386)。 -
いくつかの 論理的プロパティ ショートハンドと、フローに関係する border radius プロパティを実装しました:
padding-block
およびpadding-inline
(Firefox バグ 1519847)。margin-block
およびmargin-inline
(Firefox バグ 1519944)。inset
、inset-block
、inset-inline
(Firefox バグ 1520229)。border-block-color
、border-block-style
、border-block-width
、border-inline-color
、border-inline-style
、border-inline-width
(Firefox バグ 1520236)。border-block
、border-inline
(Firefox バグ 1520396)。border-start-start-radius
、border-start-end-radius
、border-end-start-radius
、border-end-end-radius
(Firefox バグ 1520684)。
-
overflow-inline
およびoverflow-block
メディアクエリーを実装しました (Firefox バグ 1422235)。 -
仕様書で公表された規則に従って、
grid-template-columns
およびgrid-template-rows
のアニメーションを実装しました (Firefox バグ 1348519)。 -
テーブルのセルや列の幅で、パーセンテージを使用した
calc()
をサポートしました (Firefox バグ 957915)。 -
min-content
およびmax-content
キーワードが、接頭辞なしで使用可能になりました (Firefox バグ 1322780)。これらは以下のプロパティに設定できます:
SVG
JavaScript
変更なし。
API
API の追加と変更
- Release 版の Firefox 66 を公開した後すみやかに、音声の自動再生がデフォルトでブロックされます (Firefox バグ 1487844。ロールアウトについては Firefox バグ 1535667 をご覧ください)。この機能は、すべてのユーザーへ段階的に適用されます。
DOM
HTMLSlotElement.assignedElements()
メソッドを実装しました (Firefox バグ 1425685)。TextEncoder.encodeInto()
メソッドを実装しました (Firefox バグ 1514664)。
DOM イベント
InputEvent.inputType
プロパティを実装しました (Firefox バグ 1447239)。Window.event
およびEvent.returnValue
プロパティ (元は IE の独自機能であり、互換性の理由でほかのブラザーもサポートしました) を、Firefox 66 で再導入しました。それぞれバージョン 63 や 64 で追加した後、互換性の問題で再び削除していました。- バージョン 66 より、
keypress
イベントオブジェクトのKeyboardEvent.keyCode
プロパティが 0 であるとき、値がKeyboardEvent.charCode
と同じになります。逆にcharCode
が 0 であるときは、keyCode
と同じ値になります。このミラーリング動作はほかのブラウザーと一致しており、これに関連する互換性の問題のほとんどが解決すると思われます。ただし 一部の JavaScript ライブラリーで、ブラウザー検出によって新たな問題が発生する可能性があります。仕様書の用語では、split model から conflated model に切り替えました (UI Event 仕様書の How to determine keyCode for keypress events をご覧ください)。
メディア、ウェブオーディオ、WebRTC
- 新しい AV1 動画コーデック を macOS および Windows (Intel プロセッサー用) で、デフォルトで有効にしました。Linux は Firefox 67 でサポートする予定です (Firefox バグ 1521181、Firefox バグ 1452146、Firefox バグ 1534814)。
MediaDevices
のgetDisplayMedia()
メソッド (navigator.mediaDevices.getDisplayMedia()
として使用可能) を追加して、仕様書に一致させました。このメソッドは、スクリーンまたはスクリーンの一部をMediaStream
として取得して、操作または共有できます (Firefox バグ 1321221)。- スクリーンやウィンドウの内容を取得するための、Firefox 独自の
getUserMedia()
に基づくメソッドを最終的に非推奨にする取り組みの一部として、非標準のmediaSource
定数を値screen
およびwindow
と同等に扱うようになりました。どちらも、ユーザーが選択するスクリーンやウィンドウのリストを提供します (Firefox バグ 1474376)。 - ローカル出力の
RTCRTPStreamStats
オブジェクトにqpSum
を追加しました。これは、ビデオトラックで送受信するすべてのフレームの量子化パラメーターの合計を表します。この値が高ければ、ストリームはより圧縮されていると考えられます (Firefox バグ 1347070)。 - 将来の Firefox で Feature Policy をサポートするための取り組みで、コンテンツに適切なオリジンが存在しない状況では
getUserMedia()
を使用できなくなりました。例えばサンドボックス化された<iframe>
、ユーザーがアドレスバーに入力したdata
URL から呼び出した場合です。詳しくは MediaDevices.getUserMedia() ページの セキュリティ セクションをご覧ください (Firefox バグ 1371741)。
廃止
- WebRTC の古い
PeerConnection.getStats()
メソッドと、これに関連付けられた型を削除しました (Firefox バグ 1328194)。
ネットワーク
Accept
ヘッダーの既定値が*/*
になりました (Firefox バグ 1417463)。
セキュリティ
変更なし。
プラグイン
変更なし。
WebDriver conformance (Marionette)
API の変更点
-
新しい閲覧コンテキストを開く操作をサポートするため
WebDriver:NewWindow
を追加しました。ウィンドウまたはタブのいずれかを開くことができます (Firefox バグ 1504756)。 -
指定した要素が現在の閲覧コンテキストに含まれていない場合に、
WebDriver:SwitchToFrame
でno such element
エラーが発生するようになりました (Firefox バグ 1517196)。 -
WebDriver:ExecuteScript
およびWebDriver:ExecuteAsyncScript
が、仕様書に準拠しないscriptTimeout
引数をサポートしないようになりました。代わりにWebDriver:SetTimeout
またはtimeouts
機能を使用してください (Firefox バグ 1510929)。- さらに、不定のスクリプトタイムアウトをサポートしました (Firefox バグ 1128997)。
-
WebDriver:SetWindowRect
が、応答でウィンドウの状態を返さないようになりました (Firefox バグ 1517587)。
バグ修正
WebDriver:TakeScreenshot
が、ビューポートの寸法に代わってDocument.documentElement
のElement.clientWidth
およびElement.clientHeight
プロパティを使用するようになりました (Firefox バグ 1385706)。- ウィンドウ操作コマンドがプラットフォームをまたいで確かに動作するようにするため、さまざまな修正を行いました (Firefox バグ 1522408, Firefox バグ 1478358, Firefox バグ 1489955)。
アドオン開発者向けの変更点
API の変更点
メニュー
type
が "bookmark" である拡張機能のメニュー項目が、ブックマークサイドバー (Ctrl
+B
) およびライブラリーウィンドウ (Ctrl
+Shift
+B
) にも表示されるようになりました (Firefox バグ 1419195)。
マニフェストの変更点
変更なし。
関連情報
過去のバージョン
- Firefox 65 for developers
- Firefox 64 for developers
- Firefox 63 for developers
- Firefox 62 for developers
- Firefox 61 for developers
- Firefox 60 for developers
- Firefox 59 for developers
- Firefox 58 for developers
- Firefox 57 for developers
- Firefox 56 for developers
- Firefox 55 for developers
- Firefox 54 for developers
- Firefox 53 for developers
- Firefox 52 for developers
- Firefox 51 for developers
- Firefox 50 for developers
- Firefox 49 for developers
- Firefox 48 for developers
- Firefox 47 for developers
- Firefox 46 for developers
- 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