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 auffalse
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
- Die
zstd
-Direktive desContent-Encoding
-HTTP-Headers wird jetzt unterstützt, was die Dekodierung von servergesendetem Inhalt ermöglicht, der mit dem Zstandard-Kompressionsalgorithmus kodiert ist (Firefox-Bug 1871963).
APIs
-
IDBFactory.databases()
wird jetzt für die Auflistung verfügbarer IndexedDB API-Datenbanken unterstützt (Firefox-Bug 934640). -
IDBTransaction.durability
kann jetzt verwendet werden, um die Transaktionshaltbarkeitsangabe abzufragen, mit der die Transaktion erstellt wurde (Firefox-Bug 1878143). -
Die
URL.parse()
-statische Methode wird nun zur Erstellung vonURL
-Objekten unterstützt. Dies gibtnull
zurück, wenn die übergebenen Parameter keine gültigeURL
definieren, und kann daher als nicht-auslösende Alternative zur Erstellung einesURL
-Objekts mit demURL
-Konstruktor verwendet werden (Firefox-Bug 1823354). -
Die Screen Wake Lock API wird jetzt unterstützt und ermöglicht es einer Webanwendung, anzufordern, dass der Bildschirm nicht gedimmt oder gesperrt wird, während er aktiv ist. Dies ist besonders nützlich für Navigations- und Leseanwendungen sowie andere Anwendungen, bei denen der Bildschirm während der Verwendung möglicherweise keine regelmäßigen physischen Eingaben erhält, die ihn normalerweise wach halten würden. Der Zugriff auf die API erfolgt über
Navigator.wakeLock
in sicheren Kontexten, was einWakeLock
zurückgibt. Damit können Sie einWakeLockSentinel
anfordern, das verwendet werden kann, um den Status des Wake-Locks zu überwachen und manuell freizugeben (Firefox-Bug 1589554, Firefox-Bug 1874849). -
Alle
RTCIceCandidate
-Eigenschaften und -Methoden werden nun unterstützt und entsprechen der Spezifikation, mit Ausnahme der nicht implementierten EigenschaftenrelayProtocol
undurl
. Folgende Änderungen wurden an den Eigenschaften vonRTCIceCandidate
vorgenommen:- Die folgenden Eigenschaften wurden als schreibgeschützt markiert:
candidate
,sdpMid
,sdpMLineIndex
undusernameFragment
. - Folgende Eigenschaften wurden hinzugefügt:
foundation
,component
,priority
,address
,protocol
,port
,type
,tcpType
,relatedAddress
,relatedPort
undusernameFragment
.
- Die folgenden Eigenschaften wurden als schreibgeschützt markiert:
-
Die
Element.currentCSSZoom
-Eigenschaft ist nun schreibgeschützt und wird zur Abfrage des effektiven CSS-zoom eines Elements unterstützt (Firefox-Bug 1880189).
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 (einCustomStateSet
) 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
- Die
<marquee>
HTML-Element-Ereignissebounce
,finish
undstart
wurden ausHTMLMarqueeElement
entfernt, zusammen mit den entsprechenden Ereignis-Handler-Attributen (Firefox-Bug 1689705). - Der Theora-Codec wurde standardmäßig deaktiviert und wird in einer zukünftigen Version entfernt (Firefox-Bug 1860492).
WebDriver-Konformität (WebDriver BiDi, Marionette)
WebDriver BiDi
- Dem
network.addIntercept
-Befehl wurde dascontexts
-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 auchsession.unsubscribe
lösen jetzt eineninvalid argument
-Fehler aus, wenn der Wert der Argumenteevents
odercontexts
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äferenznetwork.cookie.cookieBehavior
, die nur für unsere CDP-Implementierung erwartet wurde (Firefox-Bug 1879503). - Die Argumente
ownership
undsandbox
für denbrowsingContext.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 dastab
-Argument an den Ereignis-Listener. Dies ermöglicht Erweiterungen, eine ausgelöste Abkürzung auf die Seite anzuwenden, auf der sie ausgegeben wurde, ohne dietabs.query()
-Methode aufrufen zu müssen (Firefox-Bug 1843866). - Der
runtime.MessageSender
-Typ enthält nun dieorigin
-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ürwebRequest.onAuthRequired
in Manifest V3 (Firefox-Bug 1820569). - Der
options_page
-Manifest-Schlüssel wird als Alias für denoptions_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 dieactiveTab
- 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 dieShadowRoot
-Objekte übergeben, die diese Knoten enthalten. DieSelection
-MethodensetBaseAndExtent()
,collapse()
undextend()
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 denclip-path
- undoffset-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 derpath()
-Funktion (Firefox-Bug 1823463 für die Unterstützung dershape()
-Funktion inclip-path
, Firefox-Bug 1884424 für die Unterstützung dershape()
-Funktion inoffset-path
, Firefox-Bug 1884425 für die Unterstützung dershape()
-Interpolation).