Firefox 126 für Entwickler

Dieser Artikel bietet Informationen über die Änderungen in Firefox 126, die Entwickler betreffen. Firefox 126 wurde am 14. Mai 2024 veröffentlicht.

Änderungen für Webentwickler

Entwickler-Tools

  • Es wurde eine Option hinzugefügt, um die geteilte Konsole zu deaktivieren (Firefox-Bug 1731635).

HTML

Keine bemerkenswerten Änderungen.

MathML

Entfernt

  • Die automatische Anpassung für vertikal zentrierte Operatoren (+, =, <, etc.) wurde standardmäßig deaktiviert. Dieses Verhalten ist im MathML Core nicht definiert und war nur als Workaround für Nicht-Math-Schriftarten notwendig. Es kann durch Setzen der mathml.centered_operators.disabled-Konfiguration auf false weiterhin aktiviert werden. (Firefox-Bug 1890531).

CSS

  • Die zoom-Eigenschaft wird jetzt unterstützt. Sie kann verwendet werden, um die Größe eines Elements und seines Inhalts zu vergrößern oder zu verkleinern (Firefox-Bug 390936).

JavaScript

Keine bemerkenswerten Änderungen.

HTTP

APIs

DOM

  • Die Möglichkeit, Zustände für benutzerdefinierte Elemente zu definieren und sie mit CSS-Selektoren zu matchen, ist nun standardmäßig verfügbar. Die benutzerdefinierten Zustände werden als benutzerdefinierte Bezeichner dargestellt, die zur ElementInternals.states-Eigenschaft eines Elements (ein CustomStateSet) hinzugefügt oder davon entfernt werden können. Die CSS-:state()-Pseudoklasse nimmt einen benutzerdefinierten Bezeichner als Argument und matcht benutzerdefinierte Elemente, falls der Bezeichner in ihrem Satz von Zuständen vorhanden ist (Firefox-Bug 1887543).
  • Die Selection.direction-Eigenschaft wird nun zur Anzeige der Richtung eines Bereichs unterstützt (Firefox-Bug 1867058).

Medien, WebRTC und Web Audio

Entfernt

WebDriver-Konformität (WebDriver BiDi, Marionette)

WebDriver BiDi

  • Dem network.addIntercept-Befehl wurde das contexts-Argument hinzugefügt, um die Abfangung von Netzwerkanforderungen auf bestimmte Top-Level-Browsing-Kontext zu beschränken (Firefox-Bug 1882260).
  • Sowohl die Befehle session.subscribe als auch session.unsubscribe lösen jetzt einen invalid argument-Fehler aus, wenn der Wert der Argumente events oder contexts leere Arrays sind (Firefox-Bug 1887871).
  • Die Implementierung des storage.getCookies-Befehls wurde aktualisiert, um mit dem Gecko-Standard-Cookie-Verhalten in Einklang zu stehen. Dies ermöglicht das Entfernen des Nutzerwerts für die Präferenz network.cookie.cookieBehavior, die nur für unsere CDP-Implementierung erwartet wurde (Firefox-Bug 1879503).
  • Die Argumente ownership und sandbox für den browsingContext.locateNodes-Befehl wurden entfernt, da sie nicht mehr notwendig sind (Firefox-Bug 1884935).
  • Die Fehlermeldung für den session.new-Befehl wurde verbessert, wenn keine Fähigkeiten angegeben sind (Firefox-Bug 1838152).

Änderungen für Add-on-Entwickler

  • Das commands.onCommand-Ereignis übergibt nun das tab-Argument an den Ereignis-Listener. Dies ermöglicht Erweiterungen, eine ausgelöste Abkürzung auf die Seite anzuwenden, auf der sie ausgegeben wurde, ohne die tabs.query()-Methode aufrufen zu müssen (Firefox-Bug 1843866).
  • Der runtime.MessageSender-Typ enthält nun die origin-Eigenschaft. Dies ermöglicht es, Nachrichten- oder Verbindungsanforderungen die Seite oder das Frame zu sehen, die die Verbindung geöffnet haben. Dies ist nützlich, um zu identifizieren, ob die Herkunft vertrauenswürdig ist, wenn dies aus der URL nicht ersichtlich ist (Firefox-Bug 1787379).
  • Die Berechtigung "webRequestAuthProvider" wird jetzt unterstützt. Dies bietet Kompatibilität mit Chrome für die Anfrage von Berechtigungen für webRequest.onAuthRequired in Manifest V3 (Firefox-Bug 1820569).
  • Der options_page-Manifest-Schlüssel wird als Alias für den options_ui-Schlüssel bereitgestellt. Dies wurde bereitgestellt, um Erweiterungen eine bessere Kompatibilität mit Chrome zu bieten (Firefox-Bug 1816960).
  • Die tabs.captureVisibleTab-Methode wird nun auch durch die activeTab- Berechtigung aktiviert, was Kompatibilität mit Chrome und Safari bietet (Firefox-Bug 1784920).

Experimentelle Webfunktionen

Diese Funktionen sind neu in Firefox 126, aber standardmäßig deaktiviert. Um sie auszuprobieren, suchen Sie auf der about:config-Seite nach der entsprechenden Präferenz und setzen Sie sie auf true. Weitere solche Funktionen finden Sie auf der Experimentelle Funktionen-Seite.

  • Auswahlen über die Grenze der Shadow DOM hinaus: dom.shadowdom.selection_across_boundary.enabled.

    Die Selection.getComposedRanges()-Methode kann verwendet werden, um Auswahlbereiche zu erhalten, die Anker- oder Fokusknoten innerhalb eines Shadow DOM haben – vorausgesetzt, es werden die ShadowRoot-Objekte übergeben, die diese Knoten enthalten. Die Selection-Methoden setBaseAndExtent(), collapse() und extend() wurden ebenfalls so modifiziert, dass sie Knoten innerhalb eines Shadow-Roots akzeptieren (Firefox-Bug 1867058).

  • CSS shape()-Funktion: layout.css.basic-shape-shape.enabled.

    Sie können die shape()-Funktion verwenden, um Formen in den clip-path- und offset-path-Eigenschaften zu definieren. Diese Funktion gibt Ihnen eine feinere Kontrolle über die Formen, die Sie definieren können, und bietet mehrere Vorteile gegenüber der path()-Funktion (Firefox-Bug 1823463 für die Unterstützung der shape()-Funktion in clip-path, Firefox-Bug 1884424 für die Unterstützung der shape()-Funktion in offset-path, Firefox-Bug 1884425 für die Unterstützung der shape()-Interpolation).