Firefox 139 for developers

このページでは、開発者に影響する Firefox 139 の変更点をまとめています。 Firefox 139 は、米国時間 2025 年 5 月 27 日 にリリースされました。

ウェブ開発者向けの変更点一覧

HTML

  • hidden=until-found HTML 属性および beforematch イベントをサポートしました。 hidden until found 状態は、ユーザーによる検索 (たとえば "ページ内を検索" を使用する) やフラグメントナビゲーションによって発見されるまで要素の内容を非表示にできます。 beforematch イベントは、hidden 属性が削除される直前に発生します (Firefox bug 1761043Firefox bug 1955379)。

CSS

変更なし。

JavaScript

SVG

廃止

  • 実験的な <discard> 要素と、これに対応する SVGDiscardElement JavaScript インターフェイスを削除しました。 これらはほかのブラウザーでサポートされておらず、仕様書から削除される予定です (Firefox bug 1958839)。

HTTP

変更なし。

API

DOM

  • HTMLDialogElement インターフェイスの requestClose() メソッドをサポートしました。 これにより開発者は、cancel イベントハンドラーを与えることでダイアログが閉じるのを条件つきで抑止できます (Firefox bug 1960556)。
  • Web Authentication の largeBlob および credProps 拡張をサポートしました。また、prf 拡張をすべてのデスクトップ版でサポートしました。 これらはそれぞれ、資格情報に関連づけられた大容量の blob ストレージ、資格情報に関する追加情報、資格情報や特定の入力に関連づけられた乱数を生成する機能を提供します (Firefox bug 1795020Firefox bug 1844449Firefox bug 1935280)。

WebDriver への適合 (WebDriver BiDi, Marionette)

一般

  • Firefox の優先度マネージャー (macOS のバックグラウンド QoS マネージャー) は親プロセスとコンテンツプロセスの間の IPC メッセージの優先度を管理するものですが、これをサポート済みのすべてのリモートプロトコルで一時的に無効化しました。この変更により、システムの負荷が高いときに新しく開いたバックグラウンドのタブで最初に読み込まれるページがスケジューリングされず、一部のコマンドがハングアップする問題が解消します (Firefox bug 1960734)。

WebDriver BiDi

  • テストや自動化ツールが特定のブラウジングコンテキストやユーザーコンテキストに渡って位置情報をシミュレートすることを可能にする、emulation.setGeolocationOverride コマンドを実装しました。これにより、地域に基づく推奨のためのジオフェンシングのような位置認識機能を消費者がテストできます (Firefox bug 1954992)。

アドオン開発者向けの変更点一覧

  • ローカライズされた拡張機能は言語を拡張機能のデフォルトへ戻す前に、翻訳を見つけるためロケールサブタグを段階的に探すようになりました。以前は、サブタグの言語用の翻訳が見つからない場合に、拡張機能のデフォルトの言語を使用していました。新しい動作について詳しくは、国際化の記事で ローカライズ済みの文字列の選択 をご覧ください (Firefox bug 1381580)。
  • コンテンツスクリプトやスタイルを、登録順 (すなわち、content_scripts マニフェストキー配列 の順序) に実行することを保証するようになりました。以前は、同じ js 配列内のスクリプトに限って順序を保証していました (Firefox bug 1792685)。
  • tabGroups API が使用可能になりました。この API は、拡張機能に タブグループ の変更や組み換えを可能にします。詳しくは WebExtensions Support for Tab Groups をご覧ください (Firefox bug 1940631)。

実験的なウェブ機能

以下の機能は Firefox 139 で導入しましたが、デフォルトで無効です。これらを実験するには、about:config ページで適切な設定項目を検索して true に設定してください。実験的機能 のページで、さらに多くの機能を確認できます。

  • Prioritized Task Scheduling API (Nightly リリース)。 Prioritized Task Scheduling API は、ウェブサイトの開発者のコードで定義されたか、サードパーティーのライブラリーやフレームワークで定義されたかにかかわらず、アプリケーションに所属するすべてのタスクに優先度をつけるための標準された手段を提供します。 これは Nightly リリースで、scheduler.yield() メソッドのサポートと API 全体の再有効化を追加します (Firefox bug 1958943, Firefox bug 1920115)。
  • View Transition API (Nightly リリース)。 View Transition APISPA (シングルページアプリケーション) 向けに有効化しました。これは、別のウェブサイトのビューとの間でアニメーション化されたトランジションを簡単に作れるようにする仕組みです (Firefox bug 1950759)。
  • HTML のシリアライズ時に属性の < および > のエスケープをサポート: dom.security.html_serialization_escape_lt_gt。 Firefox は HTML をシリアライズする際に属性内の文字 < および > を、それぞれ &lt; および &gt; に置き換えるようになりました。これは、HTML をシリアライズして DOM へ再挿入する特定の攻撃を防ぐことができます。 この動作は以下のメソッドやプロパティに影響があります: Element.innerHTMLElement.outerHTMLElement.getHTML()ShadowRoot.innerHTMLShadowRoot.getHTML() (Firefox bug 1941347)。
  • 非標準の beforescriptexecute および afterscriptexecute を無効化: dom.events.script_execute.enabled。 これらはブラウザで削除前のテストを可能にするため、Nightly 版に限って無効化しました。 以下のイベントに影響があります: Document インターフェイスの beforescriptexecute および afterscriptexecuteElement インターフェイスのafterscriptexecute および beforescriptexecute (Firefox bug 1954685)。

過去のバージョン