Firefox 121 für Entwickler
Dieser Artikel bietet Informationen zu den Änderungen in Firefox 121, die Entwickler betreffen. Firefox 121 wurde am 19. Dezember 2023 veröffentlicht.
Änderungen für Webentwickler
HTML
- Lazy Loading von
<iframe>
Elementen wird jetzt unterstützt und ermöglicht es Entwicklern, Hinweise zu geben, dass bestimmte<iframe>
-Elemente nur geladen werden sollten, wenn sie sichtbar werden. Dies kann die anfängliche Ladezeit beschleunigen, indem die benötigten Ressourcen beim Seitenladen reduziert werden (einige<iframe>
-Elemente müssen möglicherweise überhaupt nicht geladen werden). Der Hinweis kann über dasloading
Attribut im<iframe>
Element oder in JavaScript mittelsHTMLIFrameElement.loading
bereitgestellt werden. (Firefox-Bug 1622090).
CSS
- Die
text-wrap
Eigenschaft wurde aktualisiert und unterstützt nun die Wertebalance
undstable
. Derbalance
Wert wird für kurze Inhaltsblöcke, wie Überschriften, verwendet und stellt sicher, dass der Inhalt ausgewogen und leicht lesbar ist, wenn er auf mehrere Zeilen verteilt wird. Derstable
Wert stellt sicher, dass bearbeitbarer Inhalt während der Bearbeitung durch den Benutzer nicht umbrochen wird (Firefox-Bug 1731541). - Der
:has()
Selektor, häufig als Parent-Selektor bezeichnet, wird jetzt unterstützt. Er ermöglicht es Entwicklern, Stile auf ein Element basierend auf verwandten Elementen anzuwenden, z.B.li:has(ul)
wird eine Liste erfassen, die eine Unterliste enthält, oderh1:has(+ p)
wird eine Überschrift erfassen, nach der direkt ein Absatz folgt. - Die
text-indent
CSS-Eigenschaft unterstützt nun die Werteeach-line
undhanging
(Firefox-Bug 784648), was es Entwicklern erleichtert, bestimmte Text-Einrückungsstile zu spezifizieren. Zusätzlich können Entwickler jetzt mehreretext-indent
Eigenschaftswerte kombinieren, um kreativer zu sein, z.B.text-indent: 3em hanging each-line
.
JavaScript
-
Die
Promise.withResolvers()
statische Methode wird jetzt unterstützt. Diese stellt dieresolve
undreject
Rückruffunktionen im selben Gültigkeitsbereich wie das zurückgegebenePromise
bereit, sodass Code, der das Promise auflöst oder ablehnt, nach seiner Konstruktion definiert werden kann (Firefox-Bug 1845586). -
Date.parse()
akzeptiert jetzt mehrere zusätzliche Datumsformate:-
Jahr > 9999 für das Format
YYYY-MMM-DD
(z.B.19999-Jan-01
) (Firefox-Bug 1858851) -
MMM-DD-YYYY
(z.B.Jan-01-1970
) (Firefox-Bug 1863489) -
Millisekunden für nicht-ISO-Datenformate (z.B.
Jan 1 1970 10:00:00.050
) (Firefox-Bug 1863125) -
Wochentag am Anfang von Formaten, die bisher abgelehnt wurden, wie:
Wed, 1970-01-01
Wed, 1970-Jan-01
Der Wochentag muss nicht korrekt sein oder ein Wochentag sein; zum Beispiel funktioniert
foo 1970-01-01
(Firefox-Bug 1617562).
-
-
Weitere
Date.parse()
Korrekturen:YYYY-M-DD
undYYYY-MM-D
werden nicht länger als GMT angenommen, wie es bei einem ISO-DatumYYYY-MM-DD
der Fall wäre (Firefox-Bug 1783731).- Millisekunden für alle Formate werden nach 3 Ziffern abgeschnitten, anstatt gerundet zu werden (Firefox-Bug 746529).
APIs
- Die
sendOrder
Eigenschaft derWebTransportSendStream
Schnittstelle wird jetzt unterstützt, wodurch die relative Priorität von ausgehenden WebTransport API bidirektionalen Streams gelesen und geändert werden kann, nachdem der Stream erstellt wurde. Beachten Sie, dass dies nicht zur Änderung der Priorität unidirektionaler Streams verwendet werden kann, da Firefox diese alsWritableStream
statt alsWebTransportSendStream
implementiert. (Weitere Informationen finden Sie in Firefox-Bug 1853444.)
DOM
HTMLInputElement.showPicker()
funktioniert jetzt für<input type="week">
und<input type="month">
Elemente unter Android (Firefox-Bug 1853797).
WebAssembly
- WebAssembly unterstützt jetzt Tail-Call-Optimierung über neue
return_call
undreturn_call_indirect
Alternativen zurcall
Anweisung. Dies verbessert die Leistung, reduziert den Stapelspeicherbedarf und verbessert die Kompatibilität mit Programmiersprachen, die Tail-Calls nutzen. (Firefox-Bug 1858855).
WebDriver-Konformität (WebDriver BiDi, Marionette)
WebDriver BiDi
- Das
browsingContext.contextDestroyed
Ereignis wurde hinzugefügt, das ausgelöst wird, wenn ein Browsing-Kontext verworfen wird (Firefox-Bug 1694390). - Unterstützung für den
userActivation
Parameter für diescript.callFunction
undscript.evaluate
Befehle wurde hinzugefügt, wodurch die Bewertung von JavaScript unter Emulation der Benutzeraktion ermöglicht wird. (Firefox-Bug 1845488). - Unterstützung für das
defaultValue
Feld für dasbrowsingContext.userPromptOpened
Ereignis wurde hinzugefügt, das es Benutzern ermöglicht, den Standardwert von Eingabeaufforderungen abzurufen (Firefox-Bug 1851761). - Der
viewportOptions
Parameter für denbrowsingContext.captureScreenshot
Befehl wurde inboxOptions
umbenannt (Firefox-Bug 1859258). - Der
scrollIntoView
Parameter für denbrowsingContext.captureScreenshot
Befehl wurde entfernt, zugunsten des unten angegebenen Parametersorigin
(Firefox-Bug 1862649). - Unterstützung für den
origin
Parameter für denbrowsingContext.captureScreenshot
Befehl wurde hinzugefügt, der es ermöglicht, den Ursprung und die Grenzen des Screenshots zu definieren. Die akzeptierten Werte sind"document"
und"viewport"
(Firefox-Bug 1840999). - Beim Serialisieren von
Window
Objekten enthält der serialisierte Wert jetzt einecontext
Eigenschaft, die auf die Kontext-ID für dasWindow
Objekt gesetzt ist, die auch mit Marionette ausgetauscht werden kann, um spezifische Fenster und Frames zu referenzieren (Firefox-Bug 1841049). - Ein Fehler wurde behoben, bei dem die Serialisierung eines in einer Datenstruktur (Array, Map, etc.) verschachtelten Node fehlschlug (Firefox-Bug 1861000).
- Ein Fehler wurde behoben, bei dem der
browsingContext.navigate
Befehl eine falsche Navigations-ID zurückgeben konnte (Firefox-Bug 1861655).
Marionette
- Unterstützung für die Serialisierung und Deserialisierung von
Window
undFrame
Objekten wurde hinzugefügt (Firefox-Bug 1274251).
Experimentelle Webfunktionen
Diese Funktionen sind neu in Firefox 121 ausgeliefert, aber standardmäßig deaktiviert. Um mit ihnen zu experimentieren, suchen Sie nach der entsprechenden Einstellung auf der about:config
Seite und setzen Sie sie auf true
. Weitere solcher Funktionen finden Sie auf der Seite Experimentelle Funktionen.
- Pseudo-Klasse für benutzerdefinierten Elementzustand:
dom.element.customstateset.enabled
-
Benutzerdefinierte Elemente können ihren internen Zustand über die
states
Eigenschaft alsCustomStateSet
darstellen. Eine CSS-Benutzerzustand-Pseudo-Klasse wie:--some-state
kann den Zustand dieses Elements erfassen. (Firefox-Bug 1861466) showPicker()
Methode für HTML-Auswahlelemente:dom.select.showPicker.enabled
-
Die
HTMLSelectElement.showPicker()
Methode startet programmgesteuert den Browser-Auswahldialog für ein<select>
Element, ausgelöst durch Benutzerinteraktion. (Firefox-Bug 1854112)
Änderungen für Add-on-Entwickler
-
Ein Fehler wurde behoben, der dazu führte, dass Hintergrundseiten nicht gestartet wurden, wenn ein
background
Schlüssel in der manifest.json die Deklarationenservice_worker
undscripts
enthält (Firefox-Bug 1860304).Hinweis: Nebenbei bemerkt sieht eine Änderung in Chrome 121 vor, dass die
scripts
Eigenschaft ignoriert wird, wenn sie zusammen mit derservice_worker
Eigenschaft angegeben wird. Bisher weigerte sich Chrome, Erweiterungen zu laden, die beide Eigenschaften enthalten (Chromium-Bug 1418934). Weitere Informationen finden Sie unter Browserunterstützung desbackground
Manifests.
Ältere Versionen
- 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
- Firefox 106 für Entwickler
- Firefox 105 für Entwickler
- Firefox 104 für Entwickler
- Firefox 103 für Entwickler
- Firefox 102 für Entwickler
- Firefox 101 für Entwickler
- Firefox 100 für Entwickler
- Firefox 99 für Entwickler
- Firefox 98 für Entwickler
- Firefox 97 für Entwickler
- Firefox 96 für Entwickler
- Firefox 95 für Entwickler
- Firefox 94 für Entwickler
- Firefox 93 für Entwickler
- Firefox 92 für Entwickler
- Firefox 91 für Entwickler
- Firefox 90 für Entwickler