Firefox 70 Versionshinweise für Entwickler
Dieser Artikel bietet Informationen über die Änderungen in Firefox 70, die Entwickler betreffen werden. Firefox 70 wurde am 22. Oktober 2019 veröffentlicht.
Änderungen für Web-Entwickler
>Entwicklerwerkzeuge
Debugger-Updates
- Im Debugger können Sie jetzt Haltepunkte für DOM-Mutation setzen, sodass die Ausführung pausiert, wenn ein Node oder seine Attribute geändert werden oder wenn ein Node aus dem DOM entfernt wird (Firefox Bug 1576219).
- Der Debugger zeigt jetzt ein Overlay auf der Seite an, wenn er pausiert ist, mit grundlegenden Schritttasten, die es Ihnen ermöglichen, Schritte auszuführen und die Ausführung fortzusetzen (Firefox Bug 1574646).
- Der Debugger zeigt jetzt Quellen an, die bereits von der Engine verworfen wurden (normalerweise Skripte, die einmal während des Seitenladens ausgeführt werden), sodass Sie ordnungsgemäß Haltepunkte setzen können, um zu debuggen, wann sie das nächste Mal ausgeführt werden (Firefox Bug 1572280).
- Die Gruppierung im Scopes Panel des Debuggers wurde vereinfacht, indem zusätzliche Umgebungen, die bisher oberhalb der obersten Funktion angezeigt wurden (z.B. Blöcke, die durch
let,withoderif/elseerstellt wurden), zusammengeführt wurden (Firefox Bug 1448166). - Der Debugger behält jetzt die derzeit ausgewählten und ausgeklappten Variablen im Scopes Panel, während Sie durch den Code schreiten (Firefox Bug 1405402).
- Der Debugger behandelt jetzt das Überprüfen von Async-Funktionen korrekt, was das Debugging von asynchronen Funktionen erleichtert (Firefox Bug 1570178).
- Beim Debugging in Container-Sitzungen (nützlich zum Testen verschiedener Anmeldungen) werden die Quellen im Debugger jetzt korrekt angezeigt (Firefox Bug 1375036).
debugger-Anweisungen können jetzt im Debugger deaktiviert werden, indem man einen Haltepunkt darauf setzt und die Haltepunkte auf "Nie hier pausieren" umschaltet (Firefox Bug 925269).- WebExtensions-Entwickler können
browser.storage.localvom Extension Storage-Element unter dem Speicher-Tab inspizieren (Firefox Bug 1585499).
Weitere Updates
- Ein Icon wird neben inaktiven CSS-Eigenschaften in der Regeln-Ansicht des Seiteninspektors angezeigt, über das Sie hover können, um Informationen darüber zu erhalten, warum es inaktiv ist (Firefox Bug 1306054).
- In der CSS-Regeln-Ansicht zeigt der Farbwähler für Vordergrundfarben jetzt an, ob sein Kontrast mit der Hintergrundfarbe die Kriterien für Barrierefreiheit erfüllt (Firefox Bug 1478156).
- Das Dropdown-Menü "Überprüfen auf Probleme" des Zugänglichkeitsinspektors enthält jetzt Checks zur Tastaturzugänglichkeit (Firefox Bug 1564968).
HTML
- Firefox kann jetzt sicher generierte Passwörter dem Benutzer in den folgenden Situationen vorschlagen:
- Ein
<input>-Element hat denautocomplete="new-password"Attributwert. - Der Benutzer öffnet das Kontextmenü auf einem beliebigen Passwort-Eingabeelement, auch wenn es nicht für neue Passwörter gedacht ist.
- Ein
CSS
-
Opazitätswerte wie für
opacityoderstop-opacitykönnen jetzt Prozentwerte sein (Firefox Bug 1562086). -
grid-auto-columnsundgrid-auto-rowsakzeptieren jetzt mehrere Spurengrößenwerte (Firefox Bug 1339672). -
Eine Reihe von textbezogenen CSS-Eigenschaften wurde standardmäßig aktiviert (Firefox Bug 1573631):
text-decoration-thickness.text-underline-offset.text-decoration-skip-ink. Der Standardwert istauto, was bedeutet, dass Unter- und Überstriche jetzt standardmäßig dort unterbrochen werden, wo sie sonst über ein Glyph verlaufen würden.
-
Die
display-Eigenschaft akzeptiert nun zwei Schlüsselwortwerte, die den inneren und äußeren Anzeigetyp repräsentieren (Firefox Bug 1038294, WebKit Bug 1105868 und WebKit Bug 1557825). -
Die
font-size-Eigenschaft akzeptiert nun den neuen Schlüsselwortwertxxx-large. (Firefox Bug 1553545). -
Die
:visited-Pseudoklasse passt aus logischen und Leistungsgründen nicht mehr auf<link>-Elemente (Firefox Bug 1572246; siehe Ship Intent: Make<link>elements always unvisited und [selectors] :link and<link>für mehr Begründung). -
Wir unterstützen jetzt einen
auto-Wert für diequotes-Eigenschaft (Firefox Bug 1421938). -
Stylesheets, die in
<style>-Elementen enthalten sind, werden jetzt zur Wiederverwendung zwischengespeichert, um die Leistung zu verbessern (Firefox Bug 1480146). Beachten Sie, dass dies derzeit keine Stylesheets einschließt, die@import-Regeln enthalten. -
Der
<ratio>-Typ akzeptiert jetzt<number>/<number>oder eine einzelne<number>als Wert. (Firefox Bug 1565562).
Entfernungen
- Wir haben die Unterstützung für 3-wertige <position> (ausgenommen Hintergrund) eingestellt (Firefox Bug 1559276).
- Der
none-Wert ist jetzt incounter()/counters()ungültig — eine Änderung, die die Level 3-Spezifikation mit CSS 2.1 in Einklang bringt (Firefox Bug 1576821).
SVG
- Cut-, Copy- und Paste-Ereignisse werden jetzt an SVG-Grafikelemente gesendet (Firefox Bug 1569474).
MathML
- Das veraltete
mode-Attribut bei<math>-Elementen wurde entfernt (Firefox Bug 1573438). - Nicht-null unitless Längenwerte, wie
5für500%, werden nicht mehr unterstützt. - Längenwerte, die mit einem Punkt enden, wie
2.oder34.px, werden ebenfalls nicht mehr unterstützt.
JavaScript
- Nummerische Trenner werden jetzt unterstützt (Firefox Bug 1435818).
- Die Methode
Intl.RelativeTimeFormat.formatToParts()wurde implementiert (Firefox Bug 1473229). - Die Methode
BigInt.prototype.toLocaleString()wurde aktualisiert, um mit den Parameternlocalesundoptionsgemäß der ECMAScript 402 Intl API zu arbeiten. AuchIntl.NumberFormat.format()undIntl.NumberFormat.formatToParts()akzeptieren jetztBigIntWerte (Firefox Bug 1543677). - Gemäß der neuesten ECMAScript-Spezifikation ist eine führende Null bei BigInt-Literalen jetzt niemals erlaubt, wodurch
08nund09nungültig werden, ähnlich zu dem bestehenden Fehler bei der Verwendung von alten Oktalzahlen wie07n. Verwenden Sie immer eine führende Null mit dem Buchstaben "o" (klein oder groß) für Oktal-BigInt-Zahlen (d.h.0o755nanstelle von0755n). Siehe Firefox Bug 1568619. - Der Unicode-Erweiterungsschlüssel „nu“ wird jetzt für den
Intl.RelativeTimeFormat-Konstruktor unterstützt und die MethodeIntl.RelativeTimeFormat.resolvedOptions()gibt jetzt auchnumberingSystemzurück (Firefox Bug 1521819).
APIs
DOM
- Die Methoden
back(),forward()undgo()sind jetzt asynchron. Fügen Sie einen Listener zumpopstate-Ereignis hinzu, um benachrichtigt zu werden, dass die Navigation abgeschlossen ist (Firefox Bug 1563587). - Wir haben Unterstützung für
DOMMatrix,DOMPointusw. in Web-Workern hinzugefügt (Firefox Bug 1420580). - Einige weitere Mitglieder wurden von
HTMLDocumentzuDocumentverschoben, einschließlichDocument.all,Document.clear,Document.captureEventsund [Document.clear`](/de/docs/Web/API/Document/clear) (Firefox Bug 1558570, Firefox Bug 1558571). - Die Genehmigung von Benachrichtigungen kann innerhalb eines Cross-Origin-
<iframe>nicht mehr angefordert werden (Firefox Bug 1560741).
Media, Web Audio und WebRTC
- Die Methode
RTCPeerConnection.restartIce()wurde hinzugefügt. Dies ist eine der vier Änderungen, die erforderlich sind, um den neuen "Perfekte Verhandlung"-Mechanismus zu implementieren; der Rest wird in zukünftigen Firefox-Updates erfolgen (Firefox Bug 1551316). - Die Methode
RTCPeerConnection.setRemoteDescription()kann jetzt ohne Parameter aufgerufen werden. Dies ist ein weiteres "Perfekte Verhandlung"-Update (Firefox Bug 1568292). MediaTrackSupportedConstraints.groupIdwird jetzt unterstützt und gibttruezurück, da die EigenschaftMediaTrackConstraints.groupIdjetzt unterstützt wird (Firefox Bug 1561254).- Mehrere neue Web Audio API-Features wurden implementiert/aktualisiert:
AudioContext.getOutputTimestamp()implementiert (Firefox Bug 1324545).AudioContext.baseLatencyundAudioContext.outputLatencyimplementiert (Firefox Bug 1324552).MediaElementAudioSourceNode.mediaElementundMediaStreamAudioSourceNode.mediaStreamimplementiert (Firefox Bug 1350973).- Der
ChannelMergerNode()-Konstruktor wirft jetzt Fehler, wenn Sie versuchen,channelCountundchannelCountModeauf ungültige Werte zu setzen (Firefox Bug 1456263).
Canvas und WebGL
- Wir unterstützen jetzt
CanvasRenderingContext2D.getTransform()und die neuere Variante vonCanvasRenderingContext2D.setTransform(), die ein Matrixobjekt als Parameter anstelle von mehreren Parametern akzeptiert, die die einzelnen Komponenten der Matrix repräsentieren (Firefox Bug 928150).
HTTP
- Die Standard-Referrer-Policy für Tracking-Ressourcen von Drittanbietern ist jetzt
strict-origin-when-cross-origin, wenn der erweiterte Tracking-Schutz eingeschaltet ist (Firefox Bug 1569996). - Die Größe des
Referer-Request-Headers ist jetzt auf 4 KB (4.096 Bytes) begrenzt. Wenn ein zu langer Referer das definierte Limit überschreitet, wird nur der Ursprungsanteil gesendet (Firefox Bug 1557346). - Der HTTP-Cache wird jetzt nach dem Ursprung des obersten Dokuments partitioniert (Firefox Bug 1536058).
Entfernungen
- Die
X-Frame-Optionsallow-from uri-Anweisung wurde entfernt. Verwenden Sie stattdessen denContent-Security-Policy-Header mit derframe-ancestors-Anweisung (Firefox Bug 1301529).
WebDriver-Konformität (Marionette)
- Der Befehl
WebDriver:TakeScreenshotwurde aktualisiert, um Fission-kompatibel zu sein. Das bedeutet, dass Inhalte von Cross-Origin-IFrames jetzt in einem Screenshot der Seite enthalten sind. Oder beim Verwenden aus dem Chrome-Kontext, dass der Inhalt des aktiven Tabs jetzt innerhalb des Browserfensters sichtbar ist (Firefox Bug 1559592). WebDriver:TakeScreenshotakzeptiert keine Liste von DOM-Elementen mehr für Hervorhebungen (Firefox Bug 1575511).WebDriver:ExecuteScriptundWebDriver:ExecuteAsyncScriptsetzenwindow.onunloadnicht mehr auf Arten, die Web-exponiert sind (Firefox Bug 1568991).
Änderungen für Add-on-Entwickler
>API-Änderungen
- Ein neuer Parameter wurde zur Methode
topSites.get()hinzugefügt, der dazu führt, dass die Methode die Liste der Seiten zurückgibt, die erscheinen, wenn der Benutzer einen neuen Tab öffnet (Firefox Bug 1568617). - Die gültigen Werte der Sub-Eigenschaft
webRTCIPHandlingPolicyderprivacy.network-Eigenschaft wurden geändert (im Firefox Bug 1452713), um dem Verhalten in Chrome wie folgt zu entsprechen:disable_non_proxied_udpverhinderte zuvor die Verwendung von WebRTC, wenn kein Proxy konfiguriert war. Jetzt wird ein Proxy immer verwendet, wenn einer konfiguriert ist, aber ansonsten ist eine nicht-proxied Verbindung erlaubt.proxy_onlykann verwendet werden, um das alte Verhalten bereitzustellen; dies hat den Effekt, dass nur ICE-Negotiation über TURN on TCP mit einem Proxy erlaubt ist; keine anderen Verbindungen sind erlaubt.
Manifest-Änderungen
Entfernungen
Die folgenden Theme-Schlüsseleigenschaften, die Aliase für Themen-Tasten, die in chromium-basierte Browsern verwendet werden, bereitstellten, wurden entfernt:
images-EigenschaftheaderURL, Themen sollten jetzttheme_frameverwenden.colors-Eigenschaften:accentcolor, Themen sollten jetztframeverwenden.textcolor, Themen sollten jetzttab_background_textverwenden.
Siehe auch
- Hacks-Veröffentlichungsbeitrag: Firefox 70 — a bountiful release for all