Firefox 122 für Entwickler
Dieser Artikel bietet Informationen über die Änderungen in Firefox 122, die Entwickler betreffen. Firefox 122 wurde am 23. Januar 2024 veröffentlicht.
Änderungen für Webentwickler
HTML
<hr>
-Elemente sind jetzt als Kinder von<select>
-Elementen erlaubt. Dies ist ein neues Feature, das die Lesbarkeit von Auswahllisten mit vielen Optionen verbessert. (Firefox-Bug 1830909).- Das
type
HTML-Attribut hat keine Wirkung mehr, wenn es in<ol>
aufnone
,disc
,circle
odersquare
gesetzt wird und auch nicht mehr, wenn es in<ul>
auf1
,a
,A
,i
oderI
gesetzt wird. Datype
ein veraltetes Attribut für<ul>
und<ol>
-Listen ist, sollten diese stattdessen mit der CSS-Eigenschaftlist-style-type
gestylt werden. (Firefox-Bug 1868087).
CSS
-
Die CSS-Eigenschaft
offset-position
ist jetzt standardmäßig verfügbar. Sie definiert die Anfangsposition eines Elements auf einem Pfad. (Firefox-Bug 1598152) -
Die verschiedenen Methoden zur Definition eines CSS-
offset-path
, einschließlich<basic-shape>
,<coord-box>
undurl()
, sind nun standardmäßig aktiviert. (Firefox-Bug 1598159) -
Die CSS-Funktion
ray()
ist jetzt standardmäßig verfügbar. Sie können diese Funktion verwenden, um einenoffset-path
als Liniensegment zu definieren, das von eineroffset-position
ausgeht und in die Richtung des angegebenen Winkels verläuft. (Firefox-Bug 1598151) -
Die Eigenschaften
clip-path
undoffset-path
akzeptieren jetzt die Formfunktionenrect()
undxywh()
. Diese<basic-shape>
-Werte ermöglichen das Beschneiden und Versetzen von Elementen mit einem Rechteck, das durch Abstand von der Elementkante (rect()
) oder durch Koordinaten und Größe (xywh()
) definiert ist. (Firefox-Bug 1868722).
JavaScript
-
Die Methoden
ArrayBuffer.prototype.transfer()
undArrayBuffer.prototype.transferToFixedLength()
können jetzt verwendet werden, um das Eigentum zu übertragen von Speichern von einemArrayBuffer
zu einem anderen. Nach der Übertragung ist der ursprüngliche Buffer von seinem ursprünglichen Speicher getrennt und daher unbrauchbar; der Zustand kann mitArrayBuffer.prototype.detached
überprüft werden. (Siehe Firefox-Bug 1865103 für weitere Details.) -
Zur Angleichung an andere Browser berücksichtigen
Date.parse()
und derDate()
Konstruktor nur die ersten drei Buchstaben des angegebenen Monats, wenn nicht standardisierte Datumszeichenfolgen geparst werden. Früher wurden nur gekürzte Werte des vollständigen Monatsnamens mit drei oder mehr Zeichen akzeptiert (Siehe Firefox-Bug 1862910 für weitere Details.)
SVG
Entfernungen
- Unterstützung für
data:
-URLs in SVG-<use>
-Elementen und über dieSVGUseElement
-Schnittstelle wurde entfernt, um XSS-Angriffe zu verhindern. Die veraltete Funktionalität kann wieder aktiviert werden, indem diesvg.use-element.data-url-href.allowed
-Einstellung auftrue
gesetzt wird, obwohl dies aus Sicherheitsgründen nicht empfohlen wird (Firefox-Bug 1806964).
APIs
- Die LargestContentfulPaint API wird jetzt unterstützt. Diese API ist Teil der Performance APIs und stellt Zeitinformationen über das größte Bild oder den größten Text zur Verfügung, bevor Benutzer mit einer Webseite interagieren (Firefox-Bug 1866266).
DOM
- Die Methode
HTMLSelectElement.showPicker()
wird jetzt unterstützt, was das Programmieren des Auslösens des Browserauswahlmenüs für ein<select>
-Element bei Benutzerinteraktionen ermöglicht (Firefox-Bug 1865207).
Entfernungen
- Unterstützung für die CSS-Eigenschaft
-moz-user-focus
wurde entfernt (Firefox-Bug 1871745 und Firefox-Bug 1868552).
WebDriver-Konformität (WebDriver BiDi, Marionette)
Allgemein
- Es wurde ein Fehler behoben, der verhinderte, dass Perform Actions korrekt doppelte und andere Mehrfach-Klickereignisse für die
mouse
-Eingabequelle synthetisiert (Firefox-Bug 1864614). Zusätzlich werden diese Ereignisse nur ausgelöst, wenn sich die tatsächliche Mausposition seit der letzten Klickeingabe nicht geändert hat (Firefox-Bug 1681076). - Die Definitionen für die Tasten
Pause
undEqual
(Ziffernblock) wurden aktualisiert, um den WebDriver-Spezifikationen zu entsprechen (Firefox-Bug 1863687).
WebDriver BiDi
- Die Serialisierung von
WindowProxy
-Remoteobjekten funktioniert jetzt auch korrekt für Out-of-Process-Iframes (Firefox-Bug 1867667). - Das Kommando browsingContext.setViewport unterscheidet jetzt zwischen den Werten
undefined
undnull
für dasviewport
-Argument. Wenn aufundefined
gesetzt, bedeutet dies, dass das Viewport unverändert bleiben soll, währendnull
es auf seine ursprünglichen Abmessungen zurücksetzt (Firefox-Bug 1865618). - Unterstützung für das Kommando browsingContext.traverseHistory wurde eingeführt, das es ermöglicht, vor- und rückwärts in der Browserhistorie zu navigieren (Firefox-Bug 1841018).
- Ein Fehler bei allen unterstützten Netzwerkereignissen wurde behoben, bei dem die
context
-ID konsequent den obersten Browsing-Kontext berichtete, selbst wenn die Navigation in einem iframe stattfand (Firefox-Bug 1869735).
Marionette
- Ein Fehler mit Get Element Text wurde behoben, bei dem der Befehl fälschlicherweise einen leeren Text zurückgab, wenn sich das Element in einem Slot eines
ShadowRoot
befand (Firefox-Bug 1824664).
Experimentelle Web-Features
Diese Features sind neu in Firefox 122 eingeführt, aber standardmäßig deaktiviert. Um damit zu experimentieren, suchen Sie die entsprechende Einstellung auf der about:config
-Seite und setzen Sie sie auf true
. Weitere solche Funktionen finden Sie auf der Seite Experimentelle Features.
-
Deklaratives Shadow DOM:
dom.webcomponents.shadowdom.declarative.enabled
.Das
<template>
-Element unterstützt jetzt einshadowrootmode
-Attribut, das entweder aufopen
oderclosed
gesetzt werden kann, dieselben Werte wie diemode
-Option derattachShadow()
-Methode. Es ermöglicht die deklarative Erstellung eines Shadow-DOM-Teilbaums. (Firefox-Bug 1712140) -
Klone-Option und -Eigenschaft für Shadow DOM.
- Die Methode
Element.attachShadow()
unterstützt jetzt die boolesche Optionclonable
, die angibt, ob das erstellte Shadow-Root klonbar ist: Der Standardwert istfalse
, aber wenn er auftrue
gesetzt ist, wird der Shadow-Host, der mitNode.cloneNode()
oderDocument.importNode()
geklont wird, das Shadow-Root in der Kopie einschließen. - Das Interface
ShadowRoot
unterstützt jetzt die schreibgeschützte Eigenschaftclonable
. Es gibttrue
zurück, wenn das Shadow-Root klonbar ist, undfalse
andernfalls. Es gibt immertrue
für Shadow-Roots zurück, die über deklaratives Shadow-DOM erstellt wurden.
Wenn Shadow-Root über deklaratives Shadow-DOM erstellt wird, wird die
clonable
-Option standardmäßig auftrue
gesetzt, und dieclonable
-Eigenschaft gibttrue
zurück. (Firefox-Bug 1712140) - Die Methode
-
Popover API:
dom.element.popover.enabled
.Das Anzeigen von Popovern über Seiteninhalten wird jetzt über HTML-Attribute oder JavaScript-API unterstützt, einschließlich Styling mit der CSS-Pseudoklasse
:popover-open
und erweiterter Unterstützung für das Pseudoelement::backdrop
. Siehe die Popover API-Referenz für weitere Details. (Firefox-Bug 1823757) -
Zwischenablage lesen und schreiben:
dom.events.asyncClipboard.clipboardItem
,dom.events.asyncClipboard.readText
unddom.events.asyncClipboard.writeText
.Die asynchrone Clipboard API wird jetzt vollständig unterstützt, einschließlich der Methoden
read()
,readText()
undwrite()
sowie der SchnittstelleClipboardItem
. Ein Einfüge-Kontextmenü wird angezeigt, damit der Benutzer bestätigen kann, wenn Zwischenablagedaten gelesen werden, die nicht von derselben Origin-Seite bereitgestellt wurden. (Firefox-Bug 1809106) -
Intl.Segmenter
: standardmäßig nur in Firefox Nightly aktiviert.Das
Intl.Segmenter
-Objekt ermöglicht eine genaue, lokalsensitive Textsegmentierung eines Strings. Zum Beispiel, um einen Text in Wörter einer Sprache zu zerlegen, die keine Leerzeichen zur Trennung verwendet:Intl.Segmenter("ja-JP", { granularity: "word" })
. (Firefox-Bug 1423593)
Ältere Versionen
- Firefox 121 für Entwickler
- 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