Entwicklerhinweise zu Firefox 101
Dieser Artikel bietet Informationen über die Änderungen in Firefox 101, die Entwickler betreffen. Firefox 101 wurde am 31. Mai 2022 veröffentlicht.
Änderungen für Webentwickler
>HTML
Keine bemerkenswerten Änderungen.
CSS
-
Die
prefers-contrastMedia-Eigenschaft, die verwendet wird, um zu erkennen, ob der Benutzer eine Präferenz für höheren (more) oder geringeren (less) Kontrast in der Darstellung von Webinhalten angegeben hat, ist jetzt standardmäßig verfügbar. Diese Funktion erlaubt es jetzt auch, Benutzern eine Farbsatz für den Kontrast durch den neuencustomWert anzugeben (Firefox Fehler 1656363). -
Drei neue Viewport-Größen wurden eingeführt: klein (
s), groß (l) und dynamisch (d). Diese neuen Größen haben neue Viewport-Prozentlängeneinheiten zusätzlich zu den bestehenden -vh,vw,vmaxundvmin- hinzugefügt. Die neuen Viewport-Prozentlängeneinheiten umfassensvh,lvh,dvh,svw,lvw,dvw,svmax,lvmax,dvmax,svmin,lvminunddvmin(Firefox Fehler 1610815). Zusätzlich werden die Einheitenvbundvijetzt standardmäßig unterstützt (Firefox Fehler 1610815). -
Unterstützung für den Wert
inline-sizedercontainEigenschaft wurde hinzugefügt. Für weitere Informationen siehe (Firefox Fehler 1755565).
JavaScript
Keine bemerkenswerten Änderungen.
APIs
DOM
-
HTMLMediaElement.preservesPitchwird jetzt ohne dasmozPräfix unterstützt.mozPreservesPitchist jetzt ein Alias vonpreservesPitch, ist aber veraltet und könnte in zukünftigen Versionen entfernt werden (Firefox Fehler 1652950). -
HTMLInputElement.showPicker()wird jetzt unterstützt, wodurch der Picker für ein Eingabeelement angezeigt werden kann, wenn ein Benutzer mit einem anderen Element, z.B. einem Button, interagiert (Firefox Fehler 1745005). -
DOMExceptionist jetzt ein serialisierbares Objekt, sodass es mitstructuredClone()geklont oder zwischen Workers mitpostMessage()kopiert werden kann (Firefox Fehler 1561357). -
Konstruierbare Stylesheets werden jetzt unterstützt, was es viel einfacher macht, wiederverwendbare Stylesheets für die Verwendung mit Shadow DOM zu erstellen. Die Aktualisierung umfasst die Hinzufügung eines
CSSStyleSheet()Konstruktors zur Erstellung neuer Stylesheets, die MethodenCSSStyleSheet.replace()undCSSStyleSheet.replaceSync(), die zum Hinzufügen/Ersetzen von CSS-Regeln im Sheet verwendet werden können, sowie die EigenschaftenDocument.adoptedStyleSheetsundShadowRoot.adoptedStyleSheets, die verwendet werden, um Stylesheets zu einem Dokument und seinen Shadow DOM Unterbäumen zu teilen. Siehe Firefox Fehler 1520690 für weitere Informationen.
Medien, WebRTC und Web Audio
-
AV1-Codec-Parameter werden jetzt in Medienunterstützungsabfragen korrekt analysiert. Das bedeutet, dass
MediaCapabilities.decodingInfo(),HTMLMediaElement.canPlayType()undMediaSource.isTypeSupported()nun die Unterstützung für die Wiedergabe von AV1-Quellen basierend auf den bereitgestellten Codec-Parametern genau berichten werden.MediaCapabilities.decodingInfo()wird auch die Informationen verwenden, um genau über das "effiziente Decoding" von AV1-Videos zu berichten. Für weitere Informationen siehe Firefox Fehler 1757861. -
maxFrameratewird jetzt unterstützt, um die maximale Bildrate festzulegen, die zum Senden einer Codierung verwendet werden kann (inRTCPeerConnection.addTransceiver()undRTCRtpSender.setParameters()). Beachten Sie, dass null ein gültiger Bildratenwert ist, aber von Firefox als "kein Bildratenlimit" interpretiert wird. Für weitere Informationen siehe Firefox Fehler 1611957.
SVG
- SVG-Bilder in der Firefox-Benutzeroberfläche, die mithilfe von
prefers-color-schemegestaltet sind, respektieren dascolor-schemedes Einbettenden (zuvor ignorierteprefers-color-schemedascolor-schemedes Einbettenden und wurde entweder durch das Gerät oder das Browser-Thema ausgelöst). Dies stellt sicher, dass z.B. ein Favicon immer so gestaltet ist, dass es zum Thema der Elemente passt, die es einbetten, und nicht unbedingt dem (möglicherweise anderen) Thema des Geräts entspricht. (Firefox Fehler 1764354).
WebDriver-Konformität (WebDriver BiDi, Marionette)
Ab dieser Version von Firefox ist das WebDriver BiDi Protokoll standardmäßig aktiviert. Eine WebDriver BiDi Sitzung kann angefordert werden, indem WebDriver classic (geckodriver, Marionette) verwendet wird und die webSocketURL Fähigkeit beim Erstellen einer neuen WebDriver-Sitzung auf true gesetzt wird. Diese Fähigkeit enthält dann den WebSocket-Endpunkt, mit dem BiDi-Clients eine Verbindung herstellen können.
Die folgenden Befehle und Ereignisse sind verfügbar:
-
Fügt das
sessionModul hinzu, einschließlich einer teilweisen Implementierung für die Befehle zum globalen Abonnieren (session.subscribe) und Abbestellen (session.unsubscribe) von Ereignissen sowie die Möglichkeit, eine direkte WebDriver BiDi-Sitzung zu erstellen (session.new), wenn WebDriver classic nicht verwendet wird. -
Fügt das
browsingContextModul hinzu, einschließlich der Befehle, um einen neuen Tab oder ein neues Fenster zu öffnen (browsingContext.create) oder ein solches zu schließen (browsingContext.close), offene Browsing-Kontexte abzurufen (browsingContext.getTree) und innerhalb eines Browsing-Kontextes zu navigieren (browsingContext.navigate). Es gibt auch Unterstützung für das Ereignis, wenn ein Browsing-Kontext erstellt wurde (browsingContext.contextCreated). -
Fügt das
logModul hinzu, einschließlich Unterstützung für Log-Ereignisse (log.entryAdded).
Für weitere Informationen siehe die vollständige Fehlerliste.
Änderungen für Add-on-Entwickler
- Hinzufügung des
storage.StorageArea.onChangedEreignisses, das es Ihnen ermöglicht, auf Änderungen in denlocalundsyncSpeicherbereichen zu hören (Firefox Fehler 1758475). - Manifest V3 Vorschau Funktionen:
- Hinzufügung der
scriptingAPI, die Funktionen bietet, um ein Skript auszuführen, CSS einzufügen und zu entfernen sowie die Registrierung von Inhalts-Skripten zu verwalten (Firefox Fehler 1687764). Diese API ist für Manifest V3 Erweiterungen verfügbar und übernimmt die Skriptausführungs- sowie die Einfüge- und Entfernungseigenschaften von CSS aus dertabsAPI. - Hinzufügung der
actionAPI, die die Funktionen derbrowserActionAPI in Manifest V3 Erweiterungen übernimmt. Entsprechende Hinzufügung des"action"Manifest-Schlüssel und_execute_actionspezieller Shortcut zum ManifestcommandsSchlüssel. Beachten Sie, dass diebrowserActionAPI und der"browser_action"Manifest-Schlüssel nur in Manifest V2 Erweiterungen verfügbar sind. - Die
"background"Manifest-Schlüsseleigenschaft"persistent"kann unter der Kontrolle von Präferenzen auffalsegesetzt werden: für Manifest V2 dieextensions.eventPages.enabledPräferenz, und in Manifest V3 dieextensions.manifestV3.enabledPräferenz. - Hinzufügung des
"host_permissions"Manifest-Schlüssel, der für Manifest V3 Erweiterungen verfügbar ist. - Die Umgebung für die Ausführung von Inhalts-Skripten hat sich für Manifest V3 Erweiterungen geändert:
- Inhalts-Skripte können sich nicht mehr auf Host-Berechtigungen verlassen, um cross-origin Anfragen durchzuführen. Cross-origin Anfragen aus Inhalts-Skripten sind mit CORS möglich.
- Das
contentObjekt (dascontent.fetch,content.XMLHttpRequestundcontent.WebSocketanbot) ist aus der Umgebung für die Ausführung von Inhalts-Skripten entfernt.
- Hinzufügung der