Firefox 70 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 Webentwickler
Entwicklerwerkzeuge
Debugger-Aktualisierungen
- Im Debugger können Sie jetzt Breakpoints für DOM Mutation setzen, sodass die Ausführung pausiert, wenn ein Knoten oder dessen Attribute geändert werden oder wenn ein Knoten vom DOM entfernt wird (Firefox-Bug 1576219).
- Der Debugger zeigt jetzt ein Overlay auf der Seite, wenn diese pausiert ist, mit grundlegenden Steuerschaltflächen, die Ihnen das Weitergehen und Fortfahren ermöglichen (Firefox-Bug 1574646).
- Der Debugger zeigt nun Quellen an, die bereits vom Engine verworfen wurden (normalerweise Skripte, die einmal während des Seitenladens ausgeführt werden), sodass Sie richtig Breakpoints setzen können, um zu debuggen, wann sie das nächste Mal ausgeführt werden (Firefox-Bug 1572280).
- Das Gruppieren im Bereiche-Panel des Debuggers wurde vereinfacht, indem zusätzliche Bereiche, die vorher über der obersten Funktionsebene angezeigt wurden (z.B. durch
let
,with
oderif
/else
erzeugte Blöcke), konsolidiert wurden (Firefox-Bug 1448166). - Der Debugger behält nun die aktuell ausgewählten und erweiterten Variablen im Bereiche-Panel beim Weitergehen bei (Firefox-Bug 1405402).
- Der Debugger behandelt das Überspringen über asynchrone Funktionen nun korrekt, was das Debuggen von asynchronen Funktionen erleichtert (Firefox-Bug 1570178).
- Beim Debuggen 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 durch Setzen eines Breakpoints auf sie deaktiviert werden und die Breakpoints können auf "Hier nie anhalten" umgeschaltet werden (Firefox-Bug 925269).- WebExtensions-Entwickler können
browser.storage.local
im Extension Storage-Element unter dem Storage-Tab inspizieren (Firefox-Bug 1585499).
Weitere Aktualisierungen
- Ein Symbol wird neben inaktiven CSS-Eigenschaften in der Rules View des Page Inspector angezeigt, über das Sie schweben können, um Informationen zu erhalten, warum es inaktiv ist (Firefox-Bug 1306054).
- Im CSS Rules View informiert Sie der Farbwähler bei Vordergrundfarben nun, ob deren Kontrast zur Hintergrundfarbe die Kriterien der Barrierefreiheit erfüllt (Firefox-Bug 1478156).
- Das Dropdown-Menü Check for issues des Accessibility Inspector enthält nun Prüfungen zur Tastaturzugänglichkeit (Firefox-Bug 1564968).
HTML
-
Firefox kann jetzt dem Benutzer sicher generierte Passwörter in folgenden Situationen vorschlagen:
- Ein
<input>
-Element hat den Attributwertautocomplete="new-password"
. - Der Benutzer öffnet das Kontextmenü auf einem beliebigen Passwort-Eingabeelement, selbst wenn es nicht für neue Passwörter gedacht ist.
- Ein
CSS
-
Opazitätswerte wie für
opacity
oderstop-opacity
können jetzt prozentual angegeben werden (Firefox-Bug 1562086). -
grid-auto-columns
undgrid-auto-rows
akzeptieren jetzt mehrere Track-Größenwerte (Firefox-Bug 1339672). -
Eine Anzahl 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 andernfalls ein Glyph überqueren würden.
-
Die
display
-Eigenschaft akzeptiert jetzt zwei Schlüsselwortwerte, die den inneren und äußeren Anzeigetyp 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
-Pseudoklasse passt aus logischen und Leistungsgründen nicht mehr zu<link>
-Elementen (Firefox-Bug 1572246; siehe Intent to ship: Make<link>
elements always unvisited und [selectors] :link and<link>
für mehr Gründe). -
Wir unterstützen jetzt einen
auto
-Wert für diequotes
-Eigenschaft (Firefox-Bug 1421938). -
Stylesheets, die in
<style>
-Elementen enthalten sind, werden jetzt für die 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 nun<number>/<number>
oder eine einzelne<number>
als Wert (Firefox-Bug 1565562).
Entfernungen
- Wir haben die Unterstützung für 3-wertige <position> (außer Hintergrund) eingestellt (Firefox-Bug 1559276).
- Der
none
-Wert ist jetzt incounter()
/counters()
ungültig — eine Änderung, die Level 3 Spec 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 an<math>
-Elementen wurde entfernt (Firefox-Bug 1573438). - Nicht-null Einheitswerte ohne Längenangabe, wie
5
für500%
, werden nicht mehr unterstützt. - Längenwerte, die mit einem Punkt enden, wie
2.
oder34.px
, werden nun ebenfalls nicht mehr unterstützt.
JavaScript
- Numerische Trennzeichen 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 Parameternlocales
undoptions
gemäß der ECMAScript 402 Intl API zu arbeiten. AuchIntl.NumberFormat.format()
undIntl.NumberFormat.formatToParts()
akzeptieren jetztBigInt
-Werte (Firefox-Bug 1543677). - Entsprechend der neuesten ECMAScript-Spezifikation ist eine führende Null nun für BigInt-Literale nie erlaubt, wodurch
08n
und09n
ungültig sind, ähnlich wie bei der bestehenden Fehlermeldung bei der Verwendung von alten Oktalzahlen wie07n
. Verwenden Sie immer eine führende Null mit dem Buchstaben "o" (klein- oder großgeschrieben) für Oktal-BigInt-Zahlen (d.h.0o755n
anstelle von0755n
). Siehe Firefox-Bug 1568619. - Der Unicode-Erweiterungsschlüssel "nu" wird jetzt für den Konstruktor
Intl.RelativeTimeFormat
unterstützt und die MethodeIntl.RelativeTimeFormat.resolvedOptions()
gibt jetzt auchnumberingSystem
zurück (Firefox-Bug 1521819).
APIs
DOM
- Die Methoden
back()
,forward()
undgo()
sind jetzt asynchron. Fügen Sie einen Listener für daspopstate
-Ereignis hinzu, um zu erfahren, dass die Navigation abgeschlossen ist (Firefox-Bug 1563587). - Wir haben Unterstützung für
DOMMatrix
,DOMPoint
, etc. in Web-Workern hinzugefügt (Firefox-Bug 1420580). - Einige weitere Mitglieder wurden von
HTMLDocument
nachDocument
verschoben, einschließlichDocument.all
,Document.clear
,Document.captureEvents
undDocument.clear
(Firefox-Bug 1558570, Firefox-Bug 1558571). - Die Erlaubnis für Benachrichtigungen kann nicht mehr von innerhalb eines Cross-Origin-
<iframe>
angefordert werden (Firefox-Bug 1560741).
Medien, Web Audio und WebRTC
-
Die Methode
RTCPeerConnection.restartIce()
wurde hinzugefügt. Dies ist eine der vier Änderungen, die zur Implementierung des neuen "perfekten Verhandlungsmechanismus" benötigt werden; der Rest wird in zukünftigen Firefox-Updates kommen (Firefox-Bug 1551316). -
Die Methode
RTCPeerConnection.setRemoteDescription()
kann jetzt ohne Parameter aufgerufen werden. Dies ist ein weiteres "perfektes Verhandlungs"-Update (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 mehrerer Parameter, die die einzelnen Komponenten der Matrix darstellen (Firefox-Bug 928150).
HTTP
- Die Standard-Richtlinie für Referrer für Tracking-Ressourcen von Drittanbietern ist jetzt
strict-origin-when-cross-origin
, wenn Erweiterten Tracking-Schutz aktiviert ist (Firefox-Bug 1569996). - Die Größe des
Referer
-Anforderungs-Headers ist jetzt auf 4 KB (4.096 Bytes) begrenzt. Wenn ein überlanger Referer das festgelegte Limit überschreitet, wird nur der Ursprungsanteil gesendet (Firefox-Bug 1557346). - Der HTTP-Cache ist nun nach dem Ursprung des Top-Level-Dokuments partitioniert (Firefox-Bug 1536058).
Entfernungen
- Die
X-Frame-Options
-Richtlinieallow-from uri
wurde entfernt. Verwenden Sie stattdessen dieContent-Security-Policy
-Header mit derframe-ancestors
-Richtlinie (Firefox-Bug 1301529).
WebDriver-Konformität (Marionette)
- Der Befehl
WebDriver:TakeScreenshot
wurde aktualisiert, um Fission kompatibel zu sein. Das bedeutet, dass jetzt Inhalte von Cross-Origin iframes in einem Seiten-Screenshot enthalten sind. Oder wenn er aus dem Chrome-Bereich verwendet wird, dass jetzt der Inhalt des aktiven Tabs im Browserfenster sichtbar ist (Firefox-Bug 1559592). WebDriver:TakeScreenshot
akzeptiert nicht mehr eine Liste von DOM-Elementen, die für das Hervorheben genutzt wurde (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
-
Der Methode
topSites.get()
wurde ein neuer Parameter hinzugefügt, der bewirkt, dass die Methode die Liste der Seiten zurückgibt, die erscheinen, wenn der Benutzer einen neuen Tab öffnet (Firefox-Bug 1568617). -
Die erlaubten Werte der
webRTCIPHandlingPolicy
-Untereigenschaft derprivacy.network
-Eigenschaft wurden (in Firefox-Bug 1452713) angepasst, um das Verhalten, das in Chrome zu sehen ist, wie folgt zu entsprechen:disable_non_proxied_udp
verhinderte zuvor die Verwendung von WebRTC, wenn kein Proxy konfiguriert war. Jetzt wird immer ein Proxy verwendet, wenn einer konfiguriert ist, aber ansonsten ist eine nicht-proxied Verbindung erlaubt.proxy_only
kann verwendet werden, um das alte Verhalten bereitzustellen; dies hat zur Folge, dass nur ICE-Verhandlungen über TURN über TCP mit einem Proxy erlaubt sind; andere Verbindungen sind nicht erlaubt.
Manifest-Änderungen
Entfernungen
Die folgenden Theme-Schlüssel, die Aliase für Themeschlüssel, die in Chromium-basierten Browsern verwendet werden, bereitstellten, 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