Firefox 121 für Entwickler
Dieser Artikel bietet Informationen über die Änderungen in Firefox 121, die Entwickler betreffen. Firefox 121 wurde am 19. Dezember 2023 veröffentlicht.
Änderungen für Webentwickler
HTML
- Unterstützt wird jetzt das Lazy Loading von
<iframe>
-Elementen, wodurch Entwickler andeuten können, dass bestimmte<iframe>
-Elemente nur geladen werden sollten, wenn (und falls) sie sichtbar werden. Dies kann die anfängliche Ladezeit beschleunigen, indem die Ressourcen reduziert werden, die beim Laden der Seite abgerufen werden müssen (einige<iframe>
-Elemente müssen möglicherweise überhaupt nicht abgerufen werden). Der Hinweis kann über dasloading
-Attribut auf dem<iframe>
-Element oder in JavaScript mitHTMLIFrameElement.loading
gegeben werden. (Firefox Bug 1622090).
CSS
- Die
text-wrap
-Eigenschaft wurde mit Unterstützung für die Wertebalance
undstable
aktualisiert. Der Wertbalance
wird für kurze Inhaltsblöcke wie Überschriften verwendet und stellt sicher, dass der Inhalt ausgeglichen und leicht lesbar ist, wenn er über mehrere Zeilen verteilt ist. Der Wertstable
stellt sicher, dass bearbeitbare Inhalte beim Bearbeiten nicht umbrochen werden (Firefox Bug 1731541). - Der
:has()
-Selektor, oft 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)
passt auf eine Liste, die eine Unterliste enthält, oderh1:has(+ p)
passt auf eine Überschrift mit einem direkt darauf folgenden Absatz. - Die
text-indent
-CSS-Eigenschaft unterstützt jetzt die Werteeach-line
undhanging
(Firefox Bug 784648), wodurch Entwickler bestimmte Texteinzugsstile leichter festlegen können. Darüber hinaus können Entwickler jetzt mehrere Werte fürtext-indent
kombinieren, um mehr Kreativität zu ermöglichen, z.B.text-indent: 3em hanging each-line
.
JavaScript
-
Die statische Methode
Promise.withResolvers()
wird jetzt unterstützt. Sie bietet Zugriff auf dieresolve
undreject
Rückruffunktionen im selben Geltungsbereich wie das zurückgegebenePromise
, sodass der Code, der das Promise auflöst oder ablehnt, nach dessen Konstruktion definiert werden kann (Firefox Bug 1845586). -
Date.parse()
akzeptiert nun mehrere zusätzliche Datumsformate:-
Jahr > 9999 für das
YYYY-MMM-DD
-Format (z.B.19999-Jan-01
) (Firefox Bug 1858851) -
MMM-DD-YYYY
(z.B.Jan-01-1970
) (Firefox Bug 1863489) -
Millisekunden für nicht-ISO-Datumsformate (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 überhaupt ein Wochentag; zum Beispiel funktioniert
foo 1970-01-01
(Firefox Bug 1617562).
-
-
Weitere
Date.parse()
-Korrekturen:YYYY-M-DD
undYYYY-MM-D
werden nicht mehr 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 nach der Erstellung des Streams gelesen und geändert werden kann. Beachten Sie, dass dies nicht verwendet werden kann, um die Priorität von unidirektionalen Streams zu ändern, da Firefox diese alsWritableStream
anstelle vonWebTransportSendStream
implementiert. (Weitere Informationen finden Sie unter Firefox Bug 1853444.)
DOM
HTMLInputElement.showPicker()
funktioniert jetzt für<input type="week">
und<input type="month">
-Elemente auf 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 Stapelspeicherplatz und verbessert die Kompatibilität mit Programmiersprachen, die Tail Calls verwenden. (Firefox Bug 1858855).
WebDriver Konformität (WebDriver BiDi, Marionette)
WebDriver BiDi
- Das
browsingContext.contextDestroyed
-Ereignis wurde hinzugefügt, welches 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, welche die Ausführung von JavaScript bei Emulation der Benutzeraktion erlauben. (Firefox Bug 1845488). - Unterstützung für das
defaultValue
-Feld für dasbrowsingContext.userPromptOpened
-Ereignis wurde hinzugefügt, welches es Benutzern ermöglicht, den Standardwert von Eingabeaufforderungen abzurufen (Firefox Bug 1851761). - Der Parameter
viewportOptions
für denbrowsingContext.captureScreenshot
-Befehl wurde inboxOptions
umbenannt (Firefox Bug 1859258). - Der
scrollIntoView
-Parameter für denbrowsingContext.captureScreenshot
-Befehl wurde zugunsten des untenstehendenorigin
-Parameters entfernt (Firefox Bug 1862649). - Unterstützung für den
origin
-Parameter für denbrowsingContext.captureScreenshot
-Befehl wurde hinzugefügt, welcher die Definition des Ursprungs und der Grenzen des Screenshots erlaubt. 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, welches 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 innerhalb einer Datenstruktur (Array, Map etc.) verschachtelten Knotens 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 Web-Funktionen
Diese Funktionen sind neu in Firefox 121 verfügbar, aber standardmäßig deaktiviert. Um mit ihnen zu experimentieren, suchen Sie auf der about:config
-Seite nach der entsprechenden Einstellung und setzen Sie sie auf true
. Weitere solche Funktionen finden Sie auf der Seite Experimentelle Funktionen.
- Pseudo-Klasse für den benutzerdefinierten Elementstatus:
dom.element.customstateset.enabled
-
Benutzerdefinierte Elemente können ihren internen Status über die
states
-Eigenschaft alsCustomStateSet
offenlegen. Eine CSS-Pseudo-Klasse für benutzerdefinierte Zustände wie:--some-state
kann den Status dieses Elements anpassen. (Firefox Bug 1861466) showPicker()
-Methode für HTML-Select-Elemente:dom.select.showPicker.enabled
-
Die Methode
HTMLSelectElement.showPicker()
startet programmgesteuert den Browser-Auswahldialog für ein<select>
-Element, das durch Benutzerinteraktion ausgelöst wird. (Firefox Bug 1854112)
Änderungen für Add-on-Entwickler
-
Ein Fehler wurde behoben, bei dem Hintergrundseiten nicht gestartet wurden, wenn ein
background
-Schlüssel in der manifest.json sowohlservice_worker
als auchscripts
-Deklarationen enthielt (Firefox Bug 1860304).Hinweis: Zufälligerweise wurde in Chrome 121 die
scripts
-Eigenschaft ignoriert, wenn sie zusammen mit derservice_worker
-Eigenschaft angegeben wird. Früher lud Chrome Erweiterungen nicht, die beide Eigenschaften enthielten (Chromium Bug 1418934). Weitere Informationen finden Sie unter Browser-Support für denbackground
-Manifest-Schlüssel.
Ä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