Firefox 132 Versionshinweise für Entwickler
Dieser Artikel bietet Informationen über die Änderungen in Firefox 132, die Entwickler betreffen. Firefox 132 wurde am 29. Oktober 2024 veröffentlicht.
Änderungen für Webentwickler
>HTML
Keine bemerkenswerten Änderungen
CSS
- Die
text-emphasis-positionEigenschaft unterstützt nun denauto-Wert, um es in Einklang mittext-underline-positionzu bringen (Firefox Bug 1919658). - CSS unterstützt jetzt die Verschachtelte Deklarationsregel, was bedeutet, dass verschachteltes CSS nun in der korrekten Reihenfolge geparst wird (Firefox Bug 1918408).
Entfernungen
- Die
-moz-user-modifyCSS-Eigenschaft wurde entfernt. Diese Eigenschaft wurde zugunsten des globalen Attributscontenteditableveraltet. (Firefox Bug 1920118).
JavaScript
- Die
(?ims-ims:...)Reguläre Ausdrucksmodifikatoren erlauben es Ihnen, Änderungen nur in einem bestimmten Teil eines Regex-Musters wirksam werden zu lassen. (Firefox Bug 1913752 & Firefox Bug 1899813).
HTTP
- Der Standard-/Dokumentenwert des HTTP-Headers
Acceptwurde auftext/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8geändert. Dies entfernt Bild-MIME-Typen, die manchmal Kompatibilitätsprobleme verursachten, und stimmt mit der Fetch-Spezifikation und Safari überein. (Firefox Bug 1917177).
Entfernungen
- HTTP/2 Server Push ist standardmäßig deaktiviert, da die Präferenz
network.http.http2.allow-pushjetzt auffalsegesetzt ist. Diese Funktion wird von keinem anderen großen Browser mehr unterstützt und die Implementierung kann in einer zukünftigen Version vollständig entfernt werden. (Firefox Bug 1915848).
Datenschutz
- Alle Drittanbieter-Cookies werden jetzt bei Erweiterter Schutz vor Aktivitätensverfolgung (EAP) blockiert. (Firefox Bug 1918037).
APIs
- Die Eigenschaften
drawingBufferColorSpaceundunpackColorSpaceder SchnittstellenWebGLRenderingContextundWebGL2RenderingContextwerden jetzt unterstützt. Diese geben den Farbraum des WebGL-Zeichenpuffers und den Farbraum an, in den beim Importieren von Texturen konvertiert werden soll. (Firefox Bug 1885491, Firefox Bug 1885446). - Die Eigenschaft
Notification.silentwird nun unterstützt und steuert, ob Systembenachrichtigungen stumm sein sollen. Wennsilent: trueim KonstruktorNotification()angegeben ist, wird die resultierende Systembenachrichtigung ohne begleitende Geräusche oder Vibrationen ausgegeben, unabhängig von den Geräteeinstellungen (Firefox Bug 1809028). - Das
fetchpriority-Attribut der<link>,<script>, und<img>Elemente, diefetchPriority-Eigenschaft derHTMLLinkElement,HTMLScriptElement, undHTMLImageElementSchnittstellen, deroptions.priorityParameter, der an denRequest()Konstruktor übergeben wird, und diefetchpriorityDirektive in der HTTPLinkKopfzeile werden jetzt unterstützt. Diese ermöglichen es Entwicklern, einen Hinweis auf die relative Priorität für das Abrufen einer bestimmten Ressource im Vergleich zu anderen Ressourcen desselben Typs zu geben und können zusammen mit anderen Möglichkeiten zur Prioritätssetzung verwendet werden, wie z.B. Preloading. (Firefox Bug 1854077). - Die
CSSNestedDeclarationsSchnittstelle und die zugehörigeCSSNestedDeclarations.styleEigenschaft werden jetzt unterstützt (Firefox Bug 1918408). - Die Berechtigungen
microphoneundcamerakönnen jetzt in der MethodePermissions.query()verwendet werden, um zu prüfen, ob der Zugriff auf die entsprechende Hardware gewährt, verweigert wurde oder noch Benutzerzustimmung erfordert. (Firefox Bug 1609427 und Firefox Bug 1915222).
Medien, WebRTC und Web Audio
- Die Methoden
requestVideoFrameCallback()undcancelVideoFrameCallback()der SchnittstelleHTMLVideoElementwerden jetzt unterstützt. DierequestVideoFrameCallback()-Methode registriert eine Rückruffunktion, die ausgeführt wird, wenn ein neuer Videoframe an den Compositor gesendet wird. Entwickler können diese Funktion dazu verwenden, Operationen auf jedem Videoframe auszuführen, was effizienteres Zeichnen auf eine Leinwand, Videoanalyse, Synchronisierung mit externen Audioquellen und mehr ermöglicht. Die Methode gibt einen Rückruf-Handle zurück, der ancancelVideoFrameCallback()übergeben werden kann, um die ausstehende Rückrufanforderung zu stornieren. (Firefox Bug 1919367, Firefox Bug 1800882). - Die Methode
MediaStreamTrack.getCapabilities()wird jetzt unterstützt. Diese gibt ein Objekt zurück, das die akzeptierten Werte oder Wertebereiche für jede einschränkbare Eigenschaft des zugehörigenMediaStreamTrackenthält (Firefox Bug 1179084).
WebDriver-Konformität (WebDriver BiDi, Marionette)
WebDriver BiDi
- Mehrere Verbesserungen wurden implementiert, um WebDriver BiDi-Befehle zuverlässiger zu machen, wenn sie während der Navigation oder mit neu erstellten Tabs verwendet werden. Bisher schlugen Befehle wie
browsingContext.setViewportwahrscheinlich aufgrund einesAbortErrorfehl, sie werden jetzt einige Male wiederholt, um solche Probleme zu vermeiden. (Firefox Bug 1854942, Firefox Bug 1918287, Firefox Bug 1918672, Firefox Bug 1921756) - Das
browsingContext.contextCreated-Ereignis wird nun korrekt für Lazy-Loaded-Frames emittiert. Bisher wurde das Ereignis nur emittiert, wenn das iframe tatsächlich begann, seinen Inhalt zu laden. (Firefox Bug 1878166) - Netzwerkereignisse werden jetzt korrekt für gecachte Stylesheet-Anfragen emittiert. (Firefox Bug 1879438)
- Die zeitliche Maßeinheit für Netzwerkereignisse war bisher falsch und wurde in Mikrosekunden angegeben. Sie wird jetzt korrekt in Millisekunden angegeben. (Firefox Bug 1916685)
- Die
requestTimeaus den Netzwerkereigniszeiten sollte jetzt genauer sein und wirklich die Zeit widerspiegeln, zu der die Anfrage tatsächlich begonnen hat. (Firefox Bug 1922390)
Experimentelle Web-Funktionen
Diese Funktionen sind neu in Firefox 132 verfügbar, aber standardmäßig deaktiviert. Um mit ihnen zu experimentieren, suchen Sie die entsprechende Präferenz auf der about:config-Seite und setzen Sie sie auf true. Weitere solche Funktionen finden Sie auf der Seite Experimentelle Funktionen.
-
Cookie Store API:
dom.cookieStore.enabled.Die Cookie Store API ist eine moderne,
Promise-basierte Methode zur Verwaltung von Cookies, die den Ereignis-Loop nicht blockiert und nicht aufDocumentangewiesen ist (sie kann daher für Service Worker verfügbar gemacht werden). Ab Firefox 132 wurde ein Teil der Cookie Store API implementiert. (Firefox Bug 1800882). Dies beinhaltet:- Die
CookieStoreSchnittstelle, aberpartitionedist in den Rückgabewerten nicht enthalten. - Die
CookieChangeEventSchnittstelle, exklusivepartitioned-Eigenschaften. - Die
Window.cookieStoreEigenschaft. - Die
ServiceWorkerGlobalScope.cookieStoreEigenschaft.
- Die
-
Die
fetch()keepaliveOption:dom.fetchKeepalive.enabled.Die globale Methode
fetch()hat eine Initialisierungsoptionkeepalive. Wennkeepaliveauftruegesetzt ist, wird der Browser die zugehörige Anfrage nicht abbrechen, wenn die Seite, die sie initiiert hat, entladen wird, bevor die Anfrage abgeschlossen ist.Dies ermöglicht es einer Fetch-Anfrage, als Alternative zu
Navigator.sendBeacon()zu fungieren, wenn Analysen am Ende einer Sitzung gesendet werden, was einige Vorteile hat (Sie können HTTP-Methoden außerPOSTverwenden, Anfrageeigenschaften anpassen und auf die Serverantwort über die Erfüllung des Fetch-Promisezugreifen). Es ist auch in Service Workern verfügbar. (Firefox Bug 1906952). -
CloseWatcher:dom.closewatcher.enabled. Die SchnittstelleCloseWatcherermöglicht es Entwicklern, Komponenten zu implementieren, die mit geräteeigenen Mechanismen geschlossen werden können, so wie eingebaute Komponenten. Zum Beispiel können Sie auf Android einen Dialog mit der Zurück-Taste schließen: diese Schnittstelle ermöglicht es Ihnen, ähnlich eine benutzerdefinierte Sidebar zu schließen. (Firefox Bug 1888729). -
Promise.try():javascript.options.experimental.promise_try.Promise.try()ist eine bequeme Methode, die eine Rückruffunktion jeglicher Art (gibt zurück oder wirft, synchron oder asynchron) entgegennimmt und ihr Ergebnis in einPromiseeinwickelt, sodass Promise-Semantiken (z.B..then(),.catch()) verwendet werden können, um es zu handhaben (Firefox Bug 1905364). -
JSON.parsemit Quelle:javascript.options.experimental.json_parse_with_source. Der Vorschlag für den Zugriff auf den Quelltext vonJSON.parseerweitert dasJSON.parseVerhalten, um Funktionen bereitzustellen, die Probleme um den Präzisionsverlust beim Konvertieren von Werten wie großen Gleitkommazahlen und Datumswerten zwischen JavaScript-Werten und JSON-Texten zu mildern (Firefox Bug 1913085, Firefox Bug 1925334). Insbesondere sind nun die folgenden Funktionen verfügbar:- Der
reviverParametercontextArgument: Bietet Zugriff auf den ursprünglichen JSON-Quelltext, der geparst wurde. JSON.isRawJSON(): Prüft, ob ein Wert ein vonJSON.rawJSON()zurückgegebenes Objekt ist.JSON.rawJSON(): Erstellt ein "rohes JSON"-Objekt, das ein Stück JSON-Text enthält, das dann in ein Objekt aufgenommen werden kann, um den angegebenen Wert zu erhalten, wenn dieses Objekt serialisiert wird.
- Der