Firefox 68 für Entwickler
Dieser Artikel bietet Informationen über die Änderungen in Firefox 68, die Entwickler betreffen werden. Firefox 68 wurde am 9. Juli 2019 veröffentlicht.
Änderungen für Webentwickler
Entwickler-Tools
Browser/Web-Konsole
- Die Webkonsole zeigt jetzt mehr Informationen über CSS-Warnungen, einschließlich einer Knotenliste der DOM-Elemente, die die Regel verwendeten (Firefox-Bug 1093953).
- Sie können jetzt Inhalte in der Webkonsole mit regulären Ausdrücken filtern (Firefox-Bug 1441079).
- Die Browserkonsole ermöglicht es nun, Nachrichten aus dem Inhaltsprozess anzuzeigen oder auszublenden, indem Sie das Kontrollkästchen Inhaltsnachrichten anzeigen aktivieren oder deaktivieren (Firefox-Bug 1260877).
JavaScript-Debugger
- Sie können jetzt in allen Dateien im aktuellen Projekt suchen, indem Sie im Debugger
Shift
+Ctrl
+F
(Windows oder Linux) oderShift
+Cmd
+F
(macOS) drücken (Firefox-Bug 1320325).
Netzwerküberwachung
- Die Anfrageliste in der Netzwerküberwachung erlaubt es Ihnen nun, eine spezifische URL zu blockieren (Firefox-Bug 1151368).
- Sie können jetzt eine Netzwerk-Anfrage erneut senden, ohne Methode, URL, Parameter und Header zu bearbeiten, indem Sie den Erneut senden-Befehl im Kontextmenü verwenden (Firefox-Bug 1422014).
- Das Kontextmenü des Headers-Tabs in der Netzwerküberwachung erlaubt es Ihnen nun, alle oder einige der Header-Informationen im JSON-Format in die Zwischenablage zu kopieren (Firefox-Bug 1442249).
Seiteninspektor
- Ein Button wurde zum Regelpanel des Seiteninspektors hinzugefügt, der das Umschalten der Anzeige von Print-Media-Queries ermöglicht (Firefox-Bug 1534984).
- Das Schriftarten-Panel enthält jetzt einen Slider zur Änderung des
letter-spacing
(Firefox-Bug 1536237). - Ein Warnsymbol erscheint nun neben nicht unterstützten CSS-Eigenschaften oder Regeln mit ungültigen Werten, um Ihnen zu helfen zu verstehen, warum bestimmte Styles nicht angewendet werden (Firefox-Bug 1306054).
Speicherinspektor
- Sie können jetzt Einträge im lokalen und Sitzungs-Speicher löschen, indem Sie das Element im Speicherinspektor auswählen und die Rücktaste drücken (Firefox-Bug 1522893).
Sonstiges
- Der Barrierefreiheits-Inspektor beinhaltet jetzt eine neue Funktion Auf Probleme prüfen, die eine Reihe von Prüfwerkzeugen beinhaltet, um Barrierefreiheitsprobleme auf Ihren Webseiten hervorzuheben. Die erste verfügbare Prüfung ist Kontrast, zum Hervorheben von Farbkontrastproblemen.
- Die Präferenz, die die Sichtbarkeit interner Erweiterungen (System-Add-ons und versteckte Erweiterungen) auf der about:debugging-Seite steuert, wurde von
devtools.aboutdebugging.showSystemAddons
zudevtools.aboutdebugging.showHiddenAddons
geändert (Firefox-Bug 1544372). - Der Responsive Design Modus wurde neu gestaltet – das Geräteeinstellungen Dialogfeld (Geräteauswahlmenü > Liste bearbeiten…) ist jetzt intuitiver und einfacher zu verwenden (Firefox-Bug 1487857).
Entfernt
- Das Kontrollkästchen "Addon-Debugging aktivieren" wurde von der about:debugging-Seite entfernt (Firefox-Bug 1544813).
HTML
- Das
<track>
Element – repräsentiert durchHTMLTrackElement
– erhält jetzt eincuechange
-Event zusätzlich zumTextTrack
selbst, wenn der Texttrack von einem Medienelement enthalten ist (Firefox-Bug 1548731). <link>
Elemente unterstützen wieder dasdisabled
Attribut, allerdings mit verändertem Verhalten. Wenndisabled
auf einem<link>
Element zusammen mitrel="stylesheet"
gesetzt wird, wird das referenzierte Stylesheet während des Seitenladevorgangs nicht geladen und nur auf Nachfrage geladen, wenn dasdisabled
Attribut auffalse
geändert wird oder entfernt (Firefox-Bug 1281135).
Entfernt
<meta http-equiv="set-cookie">
wird nicht mehr unterstützt (Firefox-Bug 1457503).
CSS
-
CSS Scroll Snapping wurde auf die neueste Version der Spezifikation aktualisiert (Firefox-Bug 1312163) und (Firefox-Bug 1544136), dies beinhaltet:
- Die
scroll-padding
Eigenschaft (Firefox-Bug 1373832) - Die
scroll-margin
Eigenschaft (Firefox-Bug 1373833) - Die
scroll-snap-align
Eigenschaft (Firefox-Bug 1373835)
- Die
-
Die
-webkit-line-clamp
Eigenschaft wurde für die Kompatibilität mit anderen Browsern implementiert (Firefox-Bug 866102). -
Unterstützung wurde für das
::marker
Pseudoelement hinzugefügt (Firefox-Bug 205202) und Animation für::marker
Pseudos (Firefox-Bug 1538618) -
Wir haben
currentcolor
so geändert, dass es ein berechneter Wert ist (außer für diecolor
Eigenschaft) (Firefox-Bug 760345). -
Unterstützung für die
ch
Längeneinheit wurde korrigiert, sodass sie jetzt der Spezifikation entspricht (Backup für keine '0' Glyphe, vertikale Metriken) (Firefox-Bug 282126) -
Die
counter-set
Eigenschaft wurde implementiert. (Firefox-Bug 1518201). -
Wir implementieren jetzt Listennummerierung mit einem eingebauten "list-item" Zähler; dies behebt Fehler bei der Listennummerierung (Firefox-Bug 288704).
-
Selektormatching und Parsenunterstützung wurde für
::part()
implementiert (Firefox-Bug 1545430) und (Firefox-Bug 1545425). -
CSS Transforms werden jetzt in indirekt gerenderten Dingen unterstützt, z.B.
<mask>
,<marker>
,<pattern>
,<clipPath>
(Firefox-Bug 1323962). -
Während wir die vorgeprägten Versionen der verschiedenen Gradienten-Eigenschaften
linear-gradient()
,radial-gradient()
, undrepeating-radial-gradient()
aus Kompatibilitätsgründen verfügbar halten, haben wir deren Parsing überarbeitet, sodass sie viel mehr wie die nicht-vorgeprägten Versionen behandelt werden. Das bedeutet, dass bestimmte bestehende Styles nicht korrekt funktionieren.Insbesondere funktioniert die komplizierte Syntax, die sowohl einen Winkel als auch eine Position erfordert, nicht mehr, und das
to
Schlüsselwort im<side-or-corner>
Parameter ist für die vorgeprägten Gradienten-Eigenschaften nicht erforderlich. Es wird empfohlen, stattdessen die standardmäßigen, nicht-vorgeprägten Gradienten-Eigenschaften zu verwenden, da diese nun weit verbreitet unterstützt werden (Firefox-Bug 1547939).
Entfernt
scroll-snap-coordinate
,scroll-snap-destination
,scroll-snap-type-x
undscroll-snap-type-y
wurden entfernt.- Die
scroll-snap-type
Eigenschaft wurde zu einer Langform gemacht, sodass die alte Kurzschreibweise wiescroll-snap-type:mandatory
nicht mehr funktioniert.
SVG
Keine Änderungen.
JavaScript
- Der neue
BigInt
Primitive ist standardmäßig aktiviert (Firefox-Bug 1527902). - String generische Methoden wurden entfernt (Firefox-Bug 1222552).
APIs
CSS Object Model (CSSOM)
- Die veraltete
rules
Eigenschaft sowie die MethodenaddRule()
undremoveRule()
wurden zur SchnittstelleCSSStyleSheet
hinzugefügt. Diese wurden von Internet Explorer 9 eingeführt und haben es nie ganz geschafft, eliminiert zu werden, daher wurden sie hinzugefügt, um die Kompatibilität mit dem kleinen Prozentsatz von Websites zu verbessern, die sie noch verwenden (Firefox-Bug 1545823).
DOM
- Die Visual Viewport API wurde jetzt standardmäßig auf Android aktiviert (Firefox-Bug 1512813). Die Hinzufügung dieser API zu Desktop-Versionen von Firefox wird in Firefox-Bug 1551302 verfolgt.
- Die
Window
Funktionnoreferrer
wird nun unterstützt; wenn angegeben, wird der Inhalt des neuen Fensters geladen, ohne den Hostnamen, die IP-Adresse, die URL oder andere identifizierende Informationen über das Hostgerät zu teilen (Firefox-Bug 1527287). - Die Methode
decode()
aufHTMLImageElement
wird jetzt implementiert. Damit kann das Laden und Dekodieren eines Bildes ausgelöst werden, bevor es zum DOM hinzugefügt wird (Firefox-Bug 1501794). XMLHttpRequest
wurde aktualisiert, um den nicht-standardmäßigen Wertmoz-chunked-arraybuffer
fürresponseType
nicht mehr zu akzeptieren. Code, der ihn noch verwendet, sollte aktualisiert werden, um die Fetch-API als Stream zu verwenden (Firefox-Bug 1120171).XMLHttpRequest
gibt nun eine Warnung in der Konsole aus, wenn Sie eine synchrone Anfrage ausführen, während Sie einunload
, einbeforeunload
oder einpagehide
Event behandeln (Firefox-Bug 980902).- Die
cookie
Eigenschaft wurde von der SchnittstelleHTMLDocument
zur SchnittstelleDocument
verschoben, sodass Dokumente, die keine HTML sind, Cookies verwenden können (Firefox-Bug 144795). - Die Methoden
HTMLElement.focus()
undSVGElement.focus()
akzeptieren jetzt ein optionales Objekt, das eine booleschepreventScroll
Option enthalten kann, die angibt, ob der Browser daran gehindert werden soll, das neu fokussierte Element in den sichtbaren Bereich zu scrollen (Firefox-Bug 1374045).
DOM Events
- Firefox für Android sendet ein
resize
Ereignis nicht mehr fälschlicherweise bis nach dem ersten Bild; dies verbessert die Web-Kompatibilität mit Websites, die nicht erwarten, dass dieses Ereignis auftritt (Firefox-Bug 1528052). - Die Auslösung von Ereignissen für nicht-primäre Maustasten wurde so angepasst, dass sie die Spezifikation genauer befolgen; das
click
Ereignis wird nicht mehr gesendet, wenn nicht-primäre Tasten gedrückt werden, sondern stattdessen wirdauxclick
verwendet. Zusätzlich wirddblclick
nicht mehr bei nicht-primären Tasten ausgelöst (Firefox-Bug 1379466). - Die proprietäre Eigenschaft
mozPressure
wurde als veraltet markiert und löst nun eine Warnung in der Konsole aus (Firefox-Bug 1165211).
Medien, Web Audio und WebRTC
-
Aufgrund von Änderungen in den Richtlinien des Google Play Stores kann der OpenH264-Codec, der zur Handhabung von AVC/H.264-Videos in WebRTC-Verbindungen verwendet wird, ab Firefox 68 für Android nicht mehr heruntergeladen und installiert werden. Daher unterstützen neue Installationen von Firefox auf Android-Geräten kein AVC mehr in WebRTC-Anrufen. Wenn Sie von früheren Versionen von Firefox aktualisieren und den Codec bereits heruntergeladen haben, wird er weiterhin funktionieren. Dies betrifft keine anderen Plattformen. Weitere Details finden Sie in diesem Artikel auf SUMO oder Firefox-Bug 1548679.
-
WebRTC wurde aktualisiert, um zu erkennen, dass ein
null
Kandidat, der an denicecandidate
Ereignis-Handler übergeben wird, um anzuzeigen, dass ein Kandidat eingegangen ist, stattdessen anzeigt, dass keine weiteren Kandidaten eingehen werden; wenn dies passiert, erreicht der ICE-Gathering (iceGatheringState
) Statuscomplete
(Firefox-Bug 1318167). -
Die Methoden
getContributingSources()
undgetSynchronizationSources()
desRTCRtpReceiver
unterstützen jetzt Videotracks; bisher funktionierten sie nur bei Audio (Firefox-Bug 1534466). -
Die Web Audio API Schnittstelle
MediaStreamTrackAudioSourceNode
wird nun unterstützt, ebenso wie die MethodeAudioContext.createMediaStreamTrackSource()
(Firefox-Bug 1324548). -
RTCDataChannel.negotiated
ist nun implementiert (Firefox-Bug 1529695). -
Der Konstruktor
MediaStreamAudioSourceNode()
wurde aktualisiert, um der aktuellen Spezifikationsdefinition zu folgen, dass der "erste Audiotrack" im Stream der Track ist, dessen ID zuerst in lexikographischer Reihenfolge erscheint (Firefox-Bug 1324548). -
getUserMedia()
kann nicht mehr von einem unsicheren Kontext aus verwendet werden; der Versuch, dies zu tun, löst jetzt eineNotAllowedError
Ausnahme aus. Sichere Kontexte sind diejenigen, die über HTTPS geladen werden, diejenigen, die über dasfile:///
Schema lokalisiert sind, und diejenigen, die vonlocalhost
geladen werden. Wenn Sie unbedingt müssen, können Sie die Möglichkeit, unsichere Aufrufe vongetUserMedia()
durchzuführen, wieder aktivieren, indem Sie die Präferenzmedia.getusermedia.insecure.enabled
auftrue
setzen (Firefox-Bug 1335740).Hinweis: In Zukunft wird Firefox auch die
navigator.mediaDevices
Eigenschaft in unsicheren Kontexten entfernen, um den gesamten Zugriff auf dieMediaDevices
APIs zu verhindern. Dies ist bereits in Nightly-Builds der Fall.
Entfernt
- Die nicht-standardisierte
XMLDocument.load()
Methode wurde entfernt (Firefox-Bug 332175). - Die nicht-standardisierte
XMLDocument.async
Eigenschaft wurde entfernt (Firefox-Bug 1328138). - Der
RTCIceServer.credentialType
token
Wert wurde entfernt (Firefox-Bug 1529595).
HTTP
- Der HTTP
Clear-Site-Data
Header unterstützt dieexecutionContexts
Direktive nicht mehr. Diese wurde aufgrund von Problemen mit den Wechselwirkungen zwischen verschiedenen Arten von Daten zu unterschiedlichen Zeitpunkten im Navigationsprozess und der Art und Weise, wie die Spezifikation gestaltet ist, entfernt. Es wurde vorgeschlagen, diese Direktive aus der Spezifikation zu entfernen, aus diesem Grund und anderen (Firefox-Bug 1548034).
Entfernt
- Die
Content-Security-Policy
Direktiverequire-sri-for
wird aufgrund von Bedenken hinsichtlich ihres Standardisierungsstatus nicht mehr unterstützt. Sie war zuvor nur hinter einer Präferenz verfügbar, die standardmäßig deaktiviert war (Firefox-Bug 1386214).
Sicherheit
- Aufgrund von CVE-2019-11730: Same-origin policy behandeln alle Dateien in einem Verzeichnis als gleiche Ursprungsart, wurde Firefox so geändert, dass Dateien im gleichen Verzeichnis als von unterschiedlichen Ursprüngen behandelt werden. Dies hat eine Reihe von Nebenwirkungen auf das, was in Dokumenten geladen über file:// URLs funktionieren wird (siehe Firefox-Bug 1558299 für nützliche Hintergrundinformationen). Zum Beispiel können Worker nicht mehr geladen werden.
WebDriver-Konformität (Marionette)
Fehlerbehebungen
- Wenn
WebDriver:SwitchToWindow
die Auswahl zu einem anderen Fenster ändert, wartet es nun auf diefocus
undactivate
Ereignisse, bevor es zurückkehrt (Firefox-Bug 1335085). - Der
TypeError: this.tabModal is null
Fehler, der manchmal beim Interagieren mit modalen Dialogen oder Benutzeraufforderungen auftrat, wurde behoben (Firefox-Bug 1538782).
Sonstiges
- Die Funktion zum Erzwingen des Entladens von Hintergrund-Tabs unter niedriger Speicherbedingung wurde deaktiviert, um zu verhindern, dass Browserkontexte auf oberster Ebene magisch verschwinden (Firefox-Bug 1553748).
- Bevorzugte Inhaltsprozesse, die dazu führten, dass HTTP-Authentifizierungsdialoge nicht erschienen, wenn zu einer Website navigiert wurde, nachdem ein neuer Tab geöffnet wurde, wurden deaktiviert (Firefox-Bug 1558763).
Plugins
Keine Änderungen.
Änderungen für Add-on-Entwickler
API-Änderungen
- Die Funktionen
proxy.register()
undproxy.unregister()
wurden als veraltet markiert und werden ab Firefox 71 entfernt (Firefox-Bug 1545811). - Eine
boolean
-Flaggeincognito
wurde zu proxy.RequestDetails. Objekt hinzugefügt. Wenntrue
, zeigt es an, dass dies eine Anfrage im privaten Modus war (Firefox-Bug 1545163). - Die webRequest.RequestFilter Parameter können einen incognito-Parameter enthalten. Wenn angegeben, werden Anfragen, die nicht dem Inkognito-Zustand entsprechen (
true
oderfalse
), herausgefiltert (Firefox-Bug 1548177). - Ein
string
Wert,cookieStoreId
, der die Cookie-Speicher-ID des aktuellen Kontextes darstellt, wurde zu proxy.RequestDetails. Objekt hinzugefügt (Firefox-Bug 1545420). - Wenn ein Add-on versucht, einen Lesezeichenordner zum Stammordner hinzuzufügen, ist die resultierende Fehlermeldung jetzt viel intuitiver (Firefox-Bug 1512171).
- Das von
browser.tabs.duplicate()
zurückgegebene Versprechen wird jetzt sofort aufgelöst, bevor die Tabs vollständig geladen sind (Firefox-Bug 1394376). - Unterstützung für chrome.storage.managed wurde hinzugefügt, sodass Web-Erweiterungseinstellungen über Unternehmensrichtlinien implementiert werden können (Firefox-Bug 1230802).
proxyAuthorization
undconnectionIsolation
inproxy.onRequest
gelten jetzt nur noch für HTTPS-Proxies (Firefox-Bug 1549368).
Manifest-Änderungen
Keine Änderungen.
Siehe auch
- Hacks Release Beitrag: Firefox 68: BigInts, Kontrastprüfungen und die QuantumBar