Firefox 70 für Entwickler
Dieser Artikel bietet Informationen über die Änderungen in Firefox 70, die Entwickler betreffen. Firefox 70 wurde am 22. Oktober 2019 veröffentlicht.
Änderungen für Webentwickler
Entwicklerwerkzeuge
Debugger-Aktualisierungen
- Im Debugger können Sie jetzt Haltepunkte für DOM-Mutation setzen, sodass die Ausführung pausiert, wenn ein Knoten oder seine Attribute geändert werden oder wenn ein Knoten aus dem DOM entfernt wird (Firefox-Bug 1576219).
- Der Debugger zeigt jetzt eine Überlagerung auf der Seite an, wenn er pausiert ist, mit grundlegenden Schritttasten, die es Ihnen ermöglichen, zu schrittweise vorwärts zu gehen und fortzufahren (Firefox-Bug 1574646).
- Der Debugger zeigt jetzt Quellcodes 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, wenn sie das nächste Mal ausgeführt werden (Firefox-Bug 1572280).
- Die Gruppierung im Scopes-Panel des Debuggers wurde vereinfacht, indem zusätzliche Scopes konsolidiert wurden, die zuvor über der obersten Funktion angezeigt wurden (z.B. Blöcke, die durch
let
,with
oderif
/else
erstellt wurden) (Firefox-Bug 1448166). - Der Debugger behält jetzt die derzeit ausgewählten und erweiterten Variablen im Scopes-Panel beim Schrittweises Durchlaufen bei (Firefox-Bug 1405402).
- Der Debugger behandelt jetzt das schrittweise Durchlaufen von async-Funktionen korrekt, was das Debuggen von asynchronen Funktionen erleichtert (Firefox-Bug 1570178).
- Beim Debuggen in Container-Sitzungen (nützlich zum Testen verschiedener Logins) werden die Quellen im Debugger jetzt korrekt angezeigt (Firefox-Bug 1375036).
debugger
-Anweisungen können nun im Debugger deaktiviert werden, indem man einen Haltepunkt darauf setzt und die Haltepunkte auf "Hier nie pausieren" umstellt (Firefox-Bug 925269).- WebExtensions-Entwickler können
browser.storage.local
im Bereich Erweiterungsspeicher unter dem Registerkarte Speicher inspizieren (Firefox-Bug 1585499).
Weitere Aktualisierungen
- Ein Icon wird neben inaktiven CSS-Eigenschaften im Regeln-Ansicht des Seiteninspektors angezeigt, das Sie überfahren können, um Informationen zu erhalten, warum es inaktiv ist (Firefox-Bug 1306054).
- In der CSS-Regeln-Ansicht zeigt der Farbauswahl bei Vordergrundfarben jetzt an, ob ihr Kontrast zur Hintergrundfarbe den Barrierefreiheitskonformitätskriterien entspricht (Firefox-Bug 1478156).
- Im Dropdown-Menü "Probleme prüfen" des Barrierefreiheitsinspektors sind jetzt Tastatur-Zugänglichkeitsprüfungen enthalten (Firefox-Bug 1564968).
HTML
-
Firefox kann dem Benutzer jetzt sicher generierte Passwörter in den folgenden Situationen vorschlagen:
- Ein
<input>
-Element hat den Attributwertautocomplete="new-password"
. - 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
opacity
oderstop-opacity
können jetzt Prozentsätze sein (Firefox-Bug 1562086). -
grid-auto-columns
undgrid-auto-rows
akzeptieren nun mehrere Track-Size-Werte (Firefox-Bug 1339672). -
Eine Reihe textbezogener CSS-Eigenschaften wurden standardmäßig aktiviert (Firefox-Bug 1573631):
text-decoration-thickness
.text-underline-offset
.text-decoration-skip-ink
. Der Standardwert istauto
, was bedeutet, dass standardmäßig Unterstriche und Überstriche jetzt unterbrochen werden, wo sie ansonsten über ein Glyph verlaufen würden.
-
Die
display
-Eigenschaft akzeptiert jetzt zwei Schlüsselwortwerte, die den inneren und äußeren Darstellungstyp darstellen (Firefox-Bug 1038294, WebKit-Bug 1105868 und WebKit-Bug 1557825). -
Die
font-size
-Eigenschaft akzeptiert jetzt den neuen Schlüsselwortwertxxx-large
(Firefox-Bug 1553545). -
Die
:visited
Pseudo-Klasse passt aus logischen und leistungsbezogenen Gründen nicht mehr auf<link>
-Elemente (Firefox-Bug 1572246; siehe Intent to ship: Make<link>
elements always unvisited und [selectors] :link and<link>
für weitere Erklärungen). -
Wir unterstützen jetzt einen
auto
Wert für diequotes
-Eigenschaft (Firefox-Bug 1421938). -
Stylesheets, die in
<style>
-Elementen enthalten sind, werden nun zwischengespeichert, um die Leistung zu verbessern (Firefox-Bug 1480146). Beachten Sie, dass dies derzeit keine Stylesheets umfasst, 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-Wert <position> (außer Hintergrund) eingestellt (Firefox-Bug 1559276).
- Der
none
-Wert ist jetzt incounter()
/counters()
ungültig — eine Änderung, die die Level 3-Spezifikation an CSS 2.1 anpasst (Firefox-Bug 1576821).
SVG
- Ausschneiden, Kopieren und Einfügen Ereignisse werden jetzt an SVG-Grafikelemente gesendet (Firefox-Bug 1569474).
MathML
- Das veraltete
mode
-Attribut auf<math>
-Elementen wurde entfernt (Firefox-Bug 1573438). - Nicht-null Einheitenlose Längenwerte, wie
5
für500%
, werden nicht mehr unterstützt. - Längenwerte, die mit einem Punkt enden, wie
2.
oder34.px
, sind jetzt ebenfalls nicht unterstützt.
JavaScript
- Numerische 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 denlocales
- undoptions
-Parametern gemäß der ECMAScript 402 Intl API zu arbeiten. Außerdem akzeptierenIntl.NumberFormat.format()
undIntl.NumberFormat.formatToParts()
jetztBigInt
-Werte (Firefox-Bug 1543677). - Gemäß der neuesten ECMAScript-Spezifikation ist nun keine führende Null für BigInt-Literale erlaubt, wodurch
08n
und09n
ungültig sind, ähnlich dem bestehenden Fehler bei der Verwendung von althergebrachten Oktalzahlen wie07n
. Verwenden Sie immer eine führende Null mit dem Buchstaben "o" (klein- oder großgeschrieben) für oktaleBigInt
-Zahlen (d.h.0o755n
anstatt0755n
). 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 nun auchnumberingSystem
zurü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
,DOMPoint
usw. in Webworkern hinzugefügt (Firefox-Bug 1420580). - Einige weitere Mitglieder wurden von
HTMLDocument
zuDocument
verschoben, darunterDocument.all
,Document.clear
,Document.captureEvents
undDocument.clear
(Firefox-Bug 1558570, Firefox-Bug 1558571). - Es kann von einer originübergreifenden
<iframe>
keine Benachrichtigungsberechtigung mehr angefordert werden (Firefox-Bug 1560741).
Medien, Web Audio und WebRTC
-
Die Methode
RTCPeerConnection.restartIce()
wurde hinzugefügt. Dies ist eine von vier Änderungen, die zur Implementierung des neuen "perfekten Aushandlungs"-Mechanismus benötigt wird; der Rest wird in zukünftigen Firefox-Updates kommen (Firefox-Bug 1551316). -
Die Methode
RTCPeerConnection.setRemoteDescription()
kann jetzt ohne Parameter aufgerufen werden. Dies ist eine weitere "perfekte Aushandlungs"-Aktualisierung (Firefox-Bug 1568292). -
MediaTrackSupportedConstraints.groupId
wird jetzt unterstützt und gibttrue
zurück, da die EigenschaftMediaTrackConstraints.groupId
jetzt unterstützt wird (Firefox-Bug 1561254). -
Mehrere neue Web Audio API-Funktionen wurden implementiert/aktualisiert:
AudioContext.getOutputTimestamp()
implementiert (Firefox-Bug 1324545).AudioContext.baseLatency
undAudioContext.outputLatency
implementiert (Firefox-Bug 1324552).MediaElementAudioSourceNode.mediaElement
undMediaStreamAudioSourceNode.mediaStream
implementiert (Firefox-Bug 1350973).- Der Konstruktor
ChannelMergerNode()
wirft jetzt Fehler, wenn Sie versuchen,channelCount
undchannelCountMode
auf 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 akzeptiert, anstatt mehrere Parameter, die die einzelnen Komponenten der Matrix darstellen (Firefox-Bug 928150).
HTTP
- Die Standard-Referrer-Richtlinie für Ressourcen von Drittanbietern ist jetzt
strict-origin-when-cross-origin
, wenn Enhanced Tracking Protection aktiviert ist (Firefox-Bug 1569996). - Die Größe des
Referer
-Anfrage-Headers ist jetzt auf 4 KB (4.096 Bytes) begrenzt. Wenn ein zu langer Referrer das definierte Limit überschreitet, wird nur der Origin-Teil gesendet (Firefox-Bug 1557346). - Der HTTP-Cache wird jetzt pro Ursprung des obersten Dokuments partitioniert (Firefox-Bug 1536058).
Entfernungen
- Die
X-Frame-Options
-Direktiveallow-from uri
wurde entfernt. Verwenden Sie stattdessen denContent-Security-Policy
-Header mit derframe-ancestors
-Direktive (Firefox-Bug 1301529).
WebDriver-Konformität (Marionette)
- Der Befehl
WebDriver:TakeScreenshot
wurde aktualisiert, um Fission kompatibel zu sein. Das bedeutet, dass Inhalte von ursprungsübergreifenden iframes jetzt in einem Screenshot der Seite enthalten sind. Oder wenn es aus dem Chrome-Bereich verwendet wird, ist der Inhalt des aktiven Tabs jetzt innerhalb des Browserfensters sichtbar (Firefox-Bug 1559592). WebDriver:TakeScreenshot
akzeptiert keine Liste von DOM-Elementen mehr zur Hervorhebung (Firefox-Bug 1575511).WebDriver:ExecuteScript
undWebDriver:ExecuteAsyncScript
setzenwindow.onunload
nicht mehr in einer Weise, die im Web sichtbar ist (Firefox-Bug 1568991).
Änderungen für Add-on-Entwickler
API-Änderungen
-
Ein neuer Parameter wurde zur Methode
topSites.get()
hinzugefügt, der bewirkt, dass die Methode die Liste der Seiten zurückgibt, die angezeigt werden, wenn der Benutzer einen neuen Tab öffnet (Firefox-Bug 1568617). -
Die erlaubten Werte der Untereigenschaft
webRTCIPHandlingPolicy
derprivacy.network
-Eigenschaft wurden geändert (in Firefox-Bug 1452713), um dem in Chrome gesehenen Verhalten zu entsprechen:disable_non_proxied_udp
verhinderte zuvor die Verwendung von WebRTC, wenn kein Proxy konfiguriert war. Jetzt wird immer ein Proxy verwendet, sofern einer konfiguriert ist, aber ansonsten ist eine nicht-proxige Verbindung erlaubt.proxy_only
kann verwendet werden, um das alte Verhalten bereitzustellen; dies hat zur Folge, dass ICE-Aushandlungen nur über TURN auf TCP unter Verwendung eines Proxys zugelassen werden; keine anderen Verbindungen sind erlaubt.
Manifest-Änderungen
Entfernungen
Die folgenden Eigenschaften der Theme-Schlüssel, die Aliasnamen für Themes-Schlüssel bieten, die in Chromium-basierten Browsern verwendet werden, wurden entfernt:
-
images
-EigenschaftheaderURL
, Themes sollten jetzttheme_frame
verwenden. -
colors
-Eigenschaften:accentcolor
, Themes sollten jetztframe
verwenden.textcolor
, Themes sollten jetzttab_background_text
verwenden.
Siehe auch
- Hacks-Release-Beitrag: Firefox 70 — a bountiful release for all
Ältere Versionen
- Firefox 69 für Entwickler
- Firefox 68 für Entwickler
- Firefox 67 für Entwickler
- Firefox 66 für Entwickler
- Firefox 65 für Entwickler
- Firefox 64 für Entwickler
- Firefox 63 für Entwickler
- Firefox 62 für Entwickler
- Firefox 61 für Entwickler
- Firefox 60 für Entwickler
- Firefox 59 für Entwickler
- Firefox 58 für Entwickler
- Firefox 57 für Entwickler
- Firefox 56 für Entwickler
- Firefox 55 für Entwickler
- Firefox 54 für Entwickler
- Firefox 53 für Entwickler
- Firefox 52 für Entwickler
- Firefox 51 für Entwickler
- Firefox 50 für Entwickler
- Firefox 49 für Entwickler
- Firefox 48 für Entwickler
- Firefox 47 für Entwickler
- Firefox 46 für Entwickler
- Firefox 45 für Entwickler
- Firefox 44 für Entwickler
- Firefox 43 für Entwickler
- Firefox 42 für Entwickler
- Firefox 41 für Entwickler
- Firefox 40 für Entwickler
- Firefox 39 für Entwickler