Firefox 69 für Entwickler
Dieser Artikel bietet Informationen über die Änderungen in Firefox 69, die Entwickler betreffen werden. Firefox 69 wurde am 3. September 2019 veröffentlicht.
Änderungen für Webentwickler
Entwicklerwerkzeuge
Debugger
- Event Listener Breakpoints helfen Ihnen zu diagnostizieren, welcher Code von einer Seite als Reaktion auf Browserevents ausgeführt wird. Sie können spezifische Typen wie
click
oderkeydown
oder ganze Kategorien von Events auswählen, wie alle Maus-Eingabe-Events. (Firefox Bug 1526082). - Skripte, die in der Quellenliste des Debuggers angezeigt werden, können jetzt über die Option Datei herunterladen im Kontextmenü gespeichert werden (Firefox Bug 888161).
- Im Quelllistenbereich des Debuggers werden geladene Erweiterungen jetzt mit ihrem Namen anstelle ihrer UUID aufgeführt (Firefox Bug 1486416), was es wesentlich einfacher macht, den zu debuggenden Erweiterungscode zu finden.
- Der Debugger lädt jetzt signifikant schneller durch das Lazy-Loading von Skripten (Firefox Bug 1527488).
Konsole
- Browser-Konsole-Nachrichten von Tracking-Schutzfehlern, CSP-Fehlern und CORS-Fehlern werden automatisch gruppiert, um die Geräuschentwicklung von wiederholt blockierten Ressourcen und Speicherzugriffen zu reduzieren (Firefox Bug 1522396).
- Alle sichtbaren Protokolle in der Konsole können durch Speichern in einer Datei oder Kopieren in die Zwischenablage über einen neuen Sichtbare Nachrichten exportieren nach-Kontextmenüeintrag geteilt werden (Firefox Bug 1517728).
- Die Toolbar der Konsole reduziert ihre Höhe jetzt reaktionsschnell auf eine einzelne Zeile, um vertikalen Platz zu sparen (Firefox Bug 972530).
- Nachrichten aus dem Inhalt können jetzt in der Konsole ausgeblendet werden, um sich auf Protokolle aus der Firefox-Benutzeroberfläche zu konzentrieren (Firefox Bug 1523842).
Netzwerk
- Ressourcen, die wegen CSP oder Gemischtem Inhalt blockiert wurden, werden jetzt im Netzwerk-Panel angezeigt, mit Details zum Grund (Firefox Bug 1556451).
- Eine neue optionale URL-Spalte im Netzwerk-Panel kann aktiviert werden, um die vollständige URL für Ressourcen anzuzeigen (Firefox Bug 1341155).
Inspector
- Wenn Sie mit der Maus über ein Element im Seiteninspektor fahren, zeigt die erscheinende Infobar jetzt an, dass ein Element ein Flex-Container oder Flex-Item ist (Firefox Bug 1521188).
- Wenn Sie eine Seite inspizieren, die ein Raster mit einem Unterraster enthält, werden die Overlay-Linien des Elternrasters angezeigt, sobald die Linien des Unterrasters angezeigt werden; Wenn das Overlay-Kontrollkästchen des Elternrasters abgewählt ist, sind seine Linien transluzent (Firefox Bug 1550519).
Fern-Debugging
- Für unsere mobilen Webentwickler haben wir das Fern-Debugging vom alten WebIDE in ein neu gestaltetes about:debugging migriert, wodurch das Debuggen von GeckoView auf entfernten Geräten über USB erheblich verbessert wird (Firefox Bug 1462208).
Allgemein
- Die Reihenfolge der DevTools-Panels wurde geändert, um die Beliebtheit widerzuspiegeln (Firefox Bug 1558630).
HTML
- Um sich näher an die Spezifikation zu halten, lädt das Text-Track, das mit einem
<track>
-Element verbunden ist, die WebVTT-Datei mit den Text-Hinweisen nicht mehr, wenn das Element im Standard-disabled
mode
erstellt wird. Um auf die Hinweise zuzugreifen oder sie zu manipulieren, wenn dermode
aufdisabled
gesetzt ist, ändern Sie denmode
zustarted
oderhidden
; dies wird das Laden der WebVTT-Daten auslösen (Firefox Bug 1550633).
Entfernung
- Das HTML-Element
<keygen>
wurde aus Firefox entfernt. Es wurde schon vor einiger Zeit depreziert, und sein Zweck wurde allgemein durch andere Technologien ersetzt (Firefox Bug 1315460).
CSS
- Wir haben den
break-spaces
-Wert derwhite-space
-Eigenschaft implementiert (Firefox Bug 1351432). - Die SVG-Geometrieattribute (wie
width
undheight
) können nun auch als CSS-Eigenschaften definiert werden (Firefox Bug 1383650). - Der
::cue
-Selektor – der verwendet wird, um die von WebVTT angezeigten Untertitel ("cues") zu stylen – erzwingt jetzt die Einschränkungen bezüglich der CSS-Eigenschaften, die innerhalb von Cues verwendet werden dürfen, gemäß der Spezifikation (Firefox Bug 1321488). - Wir haben die Eigenschaften eingeschränkt, die auf
::marker
anwendbar sind, entsprechend der Spezifikation (Firefox Bug 1552578). - Die
overflow-block
- undoverflow-inline
-Eigenschaften wurden implementiert (Firefox Bug 1470695). - Wir haben die Möglichkeit hinzugefügt, die Unterstützung eines Selektors mithilfe von CSS-Feature-Queries (
@supports
) mit der Methodeselector()
zu testen (Firefox Bug 1513643). - Die
user-select
-Eigenschaft — die angibt, ob der Benutzer Text im betroffenen Element auswählen kann oder nicht — wurde ohne Präfix implementiert (Firefox Bug 1492739). - Wir haben localespezifisches Groß- und Kleinschreibverhalten für Litauisch implementiert (Firefox Bug 1322992), wie in diesem Beispiel zu sehen.
- Wir haben die
line-break
-Eigenschaft von CSS Text implementiert (Firefox Bug 1011369 und Firefox Bug 1531715). - Die
contain
-Eigenschaft — die Entwicklern ermöglicht, zu definieren, dass ein Element und dessen Inhalte größtenteils unabhängig vom Rest des DOM-Baums sind — wurde implementiert Firefox Bug 1487493.
SVG
- Wir haben Unterstützung für gzip-komprimierte SVG-in-OpenType hinzugefügt (Firefox Bug 1359240).
- Die Methoden
SVGGeometryElement.isPointInFill()
undSVGGeometryElement.isPointInStroke()
wurden implementiert (Firefox Bug 1325319).
JavaScript
- Public class fields sind standardmäßig aktiviert (Firefox Bug 1555464). Siehe auch Class fields für weitere Informationen.
- Die Promise-Zurückweisung-Events
unhandledrejection
undrejectionhandled
sind jetzt standardmäßig aktiviert (Firefox Bug 1362272). Um mehr darüber zu erfahren, wie diese funktionieren, siehe Promise rejection events.
HTTP
- Die HTTP-Header
Access-Control-Expose-Headers
,Access-Control-Allow-Methods
, undAccess-Control-Allow-Headers
akzeptieren jetzt einen Platzhalterwert*
für Anfragen ohne Anmeldeinformationen (Firefox Bug 1309358). Diese Änderung wurde auch auf Firefox 68 ESR übertragen.
APIs
Neue APIs
- Die Resize Observer API wird standardmäßig unterstützt (Firefox Bug 1543839).
- Die Microtask-API (
Window.queueMicrotask()
undWorkerGlobalScope.queueMicrotask()
) wurde implementiert (Firefox Bug 1480236).
DOM
- Die
DOMMatrix
,DOMPoint
, und verwandte Objekte werden jetzt in Arbeitern unterstützt (Firefox Bug 1420580). - Die Eigenschaften
pageX
undpageY
wurden vonUIEvent
zuMouseEvent
verschoben, um die Konformität zur Spezifikation zu verbessern (Firefox Bug 1178763). Diese Eigenschaften werden nicht länger den SchnittstellenCompositionEvent
,FocusEvent
,InputEvent
,KeyboardEvent
undTouchEvent
bereitgestellt, die alle vonUIEvent
erben. - Die Methoden
Blob.text()
,Blob.arrayBuffer()
, undBlob.stream()
sind jetzt implementiert (Firefox Bug 1557121). DOMMatrixReadOnly.fromMatrix()
wurde implementiert (Firefox Bug 1560462).- Wir unterstützen jetzt die sechs-Parameter-Version der
DOMMatrixReadOnly.scale()
Methode (Firefox Bug 1397945). - Die Argumente für
DOMMatrixReadOnly.translate()
,DOMMatrixReadOnly.skewX()
, undDOMMatrixReadOnly.skewY()
sind jetzt alle optional, gemäß Spezifikation (Firefox Bug 1397949). - Die Eigenschaften
Navigator.userAgent
,Navigator.platform
, undNavigator.oscpu
enthüllen nicht mehr, ob ein Benutzer 32-Bit Firefox auf einem 64-Bit Betriebssystem nutzt (Firefox Bug 1559747). Sie sagen nunLinux x86_64
anstelle vonLinux i686 on x86_64
undWin64
stattWOW64
. - Die verbleibenden Methoden von
HTMLDocument
wurden aufDocument
verschoben. Dies sollte in den meisten Fällen keine nennenswerten Auswirkungen auf Ihre Arbeit haben. Insbesondere wurden die Methodenclose()
,open()
, undwrite()
verschoben. Auch die verschiedenen editorbezogenen Methoden, einschließlichexecCommand()
sowie verschiedene Eigenschaften (Firefox Bug 1549560). - Wir haben
AbstractRange
undStaticRange
implementiert (Firefox Bug 1444847).
Medien, Web Audio und WebRTC
- Zur Verbesserung der Benutzersicherheit und im Einklang mit den neuesten Versionen der Media Capture and Streams-Spezifikation ist die
navigator.mediaDevices
-Eigenschaft nicht mehr vorhanden, wenn der Kontext unsicher ist. UmgetUserMedia()
,getDisplayMedia()
,enumerateDevices()
und dergleichen zu verwenden, stellen Sie sicher, dass Ihr Inhalt über HTTPS geladen wird (Firefox Bug 1528031). - Die
AudioParam.value
-Eigenschaft der Web Audio API gibt jetzt den tatsächlichen Wert der Eigenschaft zur aktuellen Zeit zurück, wobei alle geplanten oder abgestuften Wertänderungen berücksichtigt werden. Zuvor gab Firefox nur den zuletzt explizit gesetzten Wert zurück (durch Verwenden desvalue
-Setters) (Firefox Bug 893020). - Wir haben
MediaStreamAudioSourceNode
aktualisiert, um die neue, lexikographische Reihenfolge für Tracks zu verwenden. Zuvor war die Track-Reihenfolge dem einzelnen Browser überlassen und könnte sich sogar willkürlich ändern. Außerdem wirft der Versuch, einenMediaStreamAudioSourceNode
mit einem Stream zu erstellen, der keine Audio-Tracks enthält, jetzt einenInvalidStateError
-Ausnahmefehler (Firefox Bug 1553215). - Die
facingMode
-,deviceId
- undgroupId
-Einstellungen sind jetzt als Mitglieder desMediaTrackSettings
-Objekts enthalten, das von Aufrufen vonMediaStreamTrack.getSettings()
zurückgegeben wird (Firefox Bug 1537986).
Entfernung
- Die Methode
DOMMatrix.scaleNonUniformSelf()
wurde entfernt (Firefox Bug 1560119).
WebDriver-Konformität (Marionette)
Sonstiges
- Marionette behandelt jetzt dynamisch das Öffnen und Schließen von Modaldialogen und Benutzeraufforderungen (Firefox Bug 1477977), was auch bedeutet, dass mehrere geöffnete Eingabeaufforderungen behandelt werden (Firefox Bug 1487358).
- Der Tracking-Schutz und die DOM-Push-Funktionen sind jetzt standardmäßig deaktiviert, um das Entfernen von Teilen des DOM und zusätzliche Benachrichtigungen zu vermeiden (Firefox Bug 1542244).
- Automatisches Entladen von Hintergrund-Tabs bei geringem Arbeitsspeicher ist jetzt deaktiviert – dies wirkt sich schlecht auf die Automatisierung beim Wechseln zwischen Tabs aus (Firefox Bug 1553748).
Änderungen für Add-on-Entwickler
API-Änderungen
- Die UserScripts API ist jetzt standardmäßig aktiviert.
- Die Methode
topSites.get()
verfügt jetzt über neue Optionen —includePinned
undincludeSearchShortcuts
(Firefox Bug 1547669).
Sonstige Änderungen
- Es gibt jetzt Gruppenrichtlinienoptionen, um alle Erweiterungen zu sperren, außer denen, die auf die Whitelist gesetzt wurden (Firefox Bug 1522823).
Siehe auch
- Hacks Release-Beitrag: Firefox 69 — eine Geschichte von Resize Observer, Microtasks, CSS und DevTools