Firefox 138 für Entwickler
Dieser Artikel bietet Informationen über die Änderungen in Firefox 138, die Entwickler betreffen. Firefox 138 wurde am 29. April 2025 veröffentlicht.
Änderungen für Webentwickler
HTML
- Der Wert
importmap
destype
Attributs des<script>
Elements unterstützt jetzt denintegrity
Schlüssel. Dies ermöglicht es, die in den Importmaps referenzierten ES-Modul-URLs mit ihren Integritätsmetadaten abzugleichen. Infolgedessen sind diese Module nun mit CSP Direktiven kompatibel, die Subresource Integrity (SRI) erfordern. (Firefox bug 1945540).
CSS
Keine bemerkenswerten Änderungen
JavaScript
- Die statische Methode
Error.captureStackTrace()
wird jetzt unterstützt. Diese installiert Stack-Trace-Informationen auf einem bereitgestellten Objekt als dieError.stack
Eigenschaft. Der Hauptanwendungsfall besteht darin, einen Stack-Trace auf einem benutzerdefinierten Fehlerobjekt zu installieren, das nicht von derError
Schnittstelle abgeleitet ist. (Firefox bug 1950508). - Die statische Methode
Error.isError()
kann nun verwendet werden, um zu überprüfen, ob ein Objekt eine Instanz einesError
oder einerDOMException
ist. Dies ist zuverlässiger als die Verwendung voninstanceof
für denselben Zweck. (Firefox bug 1952249). - Die
import
Deklaration unterstützt jetzt den Import von JSON-Modulen mittels deswith
Attributs.
HTTP
- Der
Clear-Site-Data
Header kann mit dercache
(und*
) Direktive verwendet werden, um den Netzwerk-Cache des Browsers zu löschen. Dies gibt Websites mehr Kontrolle über gespeicherte Daten ihrer Nutzer, da es beispielsweise das Risiko von Datenschutzlecks durch das Löschen des Caches beim Abmelden mindert. (Firefox bug 1942272). - Der HTTP
Origin-Agent-Cluster
Antwort-Header kann jetzt von einer Website verwendet werden, um darauf hinzuweisen, dass das zugehörige Dokument in einem ursprungsbezogenen Agent-Cluster platziert werden sollte. Innerhalb eines solchen Clusters werden die vom Dokument verwendeten Betriebssystemprozesse und/oder andere OS-Ressourcen nur mit anderen Dokumenten desselben Ursprungs geteilt. Dadurch wird es weniger wahrscheinlich, dass ein ressourcenintensives Dokument die Leistung von Dokumenten anderer Ursprünge beeinträchtigt. Entwickler können testen, ob der Browser das Dokument in einem ursprungsbezogenen Agent-Cluster platziert hat, indem sie diewindow.originAgentCluster
Eigenschaft verwenden. (Firefox bug 1665474)
APIs
- Die Login Status API wird jetzt bei der Verwendung der Federated Credential Management (FedCM) API unterstützt. Sie kann verwendet werden, um festzustellen und zu überprüfen, ob ein Browserbenutzer bei einem Identitätsanbieter angemeldet ist.
Dies beinhaltet die Unterstützung der
NavigatorLogin
Schnittstelle, dernavigator.login
Eigenschaft und desSet-Login
HTTP Antwort-Headers. (Firefox bug 1945576 und Firefox bug 1945573). - Die Web Audio API unterstützt jetzt bidirektionale Nachrichtenübermittlung auf einem
AudioWorklet.port
und einemAudioWorkletGlobalScope.port
. Dies ermöglicht eine benutzerdefinierte, asynchrone Kommunikation zwischen Code im Hauptthread und dem globalen Bereich eines Audio-Worklets, wie z.B. dem Empfang von Steuerdaten oder globalen Einstellungen. (Firefox bug 1951240) - Die
getFingerprints()
Methode derRTCCertificate
Schnittstelle wird jetzt unterstützt. Eine Anwendung kann dies verwenden, um Fingerabdrücke für ein Zertifikat zu erhalten, die außerhalb des Bandes geteilt werden könnten, um einen bestimmten Nutzer oder Browser über WebRTC-Sitzungen hinweg zu identifizieren. (Firefox bug 1525241).
DOM
Medien, WebRTC und Web Audio
- WebRTC-Anwendungen können nun eine Präferenz für die Priorisierung von Bildrate oder Auflösung festlegen, wenn beide aufgrund von Netzwerkverschlechterung nicht auf den konfigurierten Ebenen gehalten werden können.
Der Wert wird mit der
degradationPreference
Eigenschaft im Parameterobjekt festgelegt, das an diesetParameters()
Methode derRTCRtpSender
Schnittstelle übergeben wird. Er kann auch aus dem Objekt gelesen werden, das von dergetParameters()
Methode zurückgegeben wird. (Firefox bug 1329847).
Konformität mit WebDriver (WebDriver BiDi, Marionette)
Allgemein
- Alle Remote-Protokolle aktivieren jetzt die Präferenzen, die erforderlich sind, um Protokolle ordnungsgemäß an stdout weiterzuleiten (Firefox bug 1947740).
- Ein neues Firefox-Argument,
--remote-enable-system-access
, wurde hinzugefügt, um sensible Funktionen zu aktivieren, wie das Interagieren mit Browsing-Kontexten im übergeordneten Prozess (z.B. Browser-UI) oder das Verwenden privilegierter APIs in Inhaltsprozessen. Dies wird für WebDriver BiDi-Funktionen in den nächsten Versionen verwendet und kann bereits mit Marionette verwendet werden (siehe Abschnitt Marionette unten) (Firefox bug 1944565).
WebDriver BiDi
- Der Befehl
webExtension.install
installiert jetzt Web-Erweiterungen standardmäßig vorübergehend, sodass er mit unsignierten Erweiterungen verwendet werden kann - entweder als XPI-Datei oder als entpackter Ordner. Ein neuer Firefox-spezifischer Parameter,moz:permanent
, wurde hinzugefügt, um die Installation als reguläre Erweiterung zu erzwingen (Firefox bug 1947678). - Der Befehl
browsingContext.setViewport
unterstützt jetzt einenuserContexts
-Parameter, der ein Array von Benutzerkontext- (Firefox-Container-) IDs sein muss. Wenn angegeben, wird die Viewport-Konfiguration auf alle Browsing-Kontexte angewendet, die zu diesen Benutzerkontexten gehören, sowie auf alle zukünftigen Kontexte, die innerhalb dieser erstellt werden. Dieser Parameter kann nicht zusammen mit dem bestehendencontext
-Parameter verwendet werden (Firefox bug 1940952). - Der Typ
browsingContext.Info
enthält jetzt eineclientWindow
-Eigenschaft, die der ID des Fensters entspricht, dem der Browsing-Kontext gehört. Sie wird typischerweise vonbrowsingContext.getTree
zurückgegeben oder in der Nutzlast von Ereignissen wiebrowsingContext.contextCreated
enthalten (Firefox bug 1920952).
Marionette
- Das Wechseln zum
chrome
(übergeordneten Prozess) Kontext mit Marionette erfordert jetzt die Verwendung des--remote-enable-system-access
Befehlszeilen-Flags beim Starten von Firefox (Firefox bug 1710425).
Änderungen für Add-on-Entwickler
- Unterstützung für
page_action
alsmenus.ContextType
in dermenus
API für Manifest V3 Erweiterungen. Dies bietet Manifest V3 Erweiterungen dieselbe Möglichkeit wie Manifest V2 Erweiterungen, Menüeinträge zupage_action
hinzuzufügen. (Firefox bug 1951166) - Die
contextualIdentities
API ist in Firefox für Android nicht mehr definiert. Früher war sie definiert, aber defekt. (Firefox bug 1659500) - Die
contextualIdentities
-Berechtigung wird in Firefox für Android nicht mehr erkannt. Früher aktivierte sie eine defekte Version der "Container"-Funktion. (Firefox bug 1659500) - Die neue Manifest V3 Version der
userScripts
API ist nun auf Firefox für Android verfügbar. (Firefox bug 1949955) - Implementiert die
webRequest.handlerBehaviorChanged
API. In früheren Versionen wurde diese Methode angezeigt, tat jedoch nichts. (Firefox bug 1657575) - Die
alarms.create
API gibt jetzt ein Promise statt undefined zurück. (Firefox bug 1869171) - Unterstützung hinzugefügt, um die Manipulation von Tabs innerhalb von Tabgruppen zu ermöglichen, einschließlich:
tabs.group()
undtabs.ungroup()
. (Firefox bug 1959714)groupId
zutabs.Tab
. (Firefox bug 1959713)groupId
zutabs.query
. (Firefox bug 1959715)groupId
zutabs.onUpdated
. (Firefox bug 1959716)
Experimentelle Webfunktionen
Diese Funktionen sind neu in Firefox 138 verfügbar und gelten als experimentell.
Sie können standardmäßig deaktiviert oder standardmäßig aktiviert sein, aber nur in der Nightly-Version verfügbar sein.
Für standardmäßig deaktivierte Funktionen 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 Experimental Features Seite.
-
UA-Stile für
<h1>
innerhalb von Sectioning-Elementen:layout.css.h1-in-section-ua-styles.enabled
.Die
<h1>
Überschrift verkleinert sich jetzt nicht mehr, wenn sie in Sectioning-Elementen<article>
,<aside>
,<nav>
und<section>
eingebettet ist. Die UA-Stile für<h1>
innerhalb von Sectioning-Elementen sind nicht mehr relevant, da der Outline-Algorithmus aus der HTML-Spezifikation entfernt wurde. (Firefox bug 1883896).Im Rahmen eines gestaffelten Rollouts dieser Entfernung wird für 5% der Nutzer von Firefox 138 und 50% der Nutzer von Firefox Beta 138 der Wert von
layout.css.h1-in-section-ua-styles.enabled
auffalse
gesetzt (Intent to unship: UA styles for h1 in article, aside, nav, section).Hinweis: Die Präferenz für diese Funktion arbeitet umgekehrt: sie ist in der Nightly-Version auf
false
gesetzt, was die UA-Stylings für Überschriften, die in Sectioning-Elementen eingebettet sind, entfernt. In allen anderen Kanälen ist sie auftrue
gesetzt, was die bestehenden UA-Stylings für die eingebetteten Überschriften beibehält. -
::details-content CSS-Pseudo-Element:
layout.css.details-content.enabled
.Das CSS
::details-content
Pseudo-Element ermöglicht es Ihnen, den Inhalt des<details>
Elements zu stylen (Firefox bug 1901037). -
Erlauben von Pseudo-Elementen nach elementgestützten Pseudo-Elementen
Die Arbeit hat begonnen, um Pseudo-Elemente wie
::first-letter
und::before
an elementgestützte Pseudo-Elemente wie::details-content
und::file-selector-button
anzuhängen. (Firefox bug 1953557).Hinweis: Die Präferenz für diese Funktion hängt vom angesprochenen elementgestützten Pseudo-Element ab, zum Beispiel:
::details-content
. -
MutationEvent
auf dem Weg zur Entfernung:dom.mutation_events.enabled
MutationEvent
und seine assoziierten Ereignisse (DOMSubtreeModified
,DOMNodeInserted
,DOMNodeRemoved
,DOMCharacterDataModified
,DOMAttrModified
) sind jetzt standardmäßig in Firefox Nightly deaktiviert. (Firefox bug 1951772). -
Notification.actions
(Nightly):dom.webnotifications.actions.enabled
Die
Notification.actions
Eigenschaft kann die Aktionen abrufen, die mit einerNotification
verbunden sind, wie sie mittelsServiceWorkerRegistration.showNotification()
festgelegt wurden. (Firefox bug 1225110). -
PerformanceEventTiming.interactionId
:dom.performance.event_timing.enable_interactionid
PerformanceEventTiming.interactionId
kann verwendet werden, um Latenzzeiten für Ereignisse zu messen, die durch eine bestimmte Benutzerinteraktion ausgelöst wurden. (Firefox bug 1934683). -
HTML Sanitisator API:
dom.security.sanitizer.enabled
Die HTML Sanitisator API ermöglicht es Entwicklern, unzuverlässige HTML-Strings aufzubereiten und sicher in das DOM eines Dokuments einzufügen. (Firefox bug 1950605), (Firefox bug 1952250).
Ältere Versionen
- Firefox 137 für Entwickler
- Firefox 136 für Entwickler
- Firefox 135 für Entwickler
- Firefox 134 für Entwickler
- Firefox 133 für Entwickler
- Firefox 132 für Entwickler
- Firefox 131 für Entwickler
- Firefox 130 für Entwickler
- Firefox 129 für Entwickler
- Firefox 128 für Entwickler
- Firefox 127 für Entwickler
- Firefox 126 für Entwickler
- Firefox 125 für Entwickler
- Firefox 124 für Entwickler
- Firefox 123 für Entwickler
- Firefox 122 für Entwickler
- Firefox 121 für Entwickler
- Firefox 120 für Entwickler
- Firefox 119 für Entwickler
- Firefox 118 für Entwickler
- Firefox 117 für Entwickler
- Firefox 116 für Entwickler
- Firefox 115 für Entwickler
- Firefox 114 für Entwickler
- Firefox 113 für Entwickler
- Firefox 112 für Entwickler
- Firefox 111 für Entwickler
- Firefox 110 für Entwickler
- Firefox 109 für Entwickler
- Firefox 108 für Entwickler
- Firefox 107 für Entwickler