Hinweise zur Veröffentlichung von 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
>Entwicklerwerkzeuge
Browser/Webkonsole
- Die Webkonsole zeigt jetzt mehr Informationen über CSS-Warnungen an, einschließlich einer Node-Liste der DOM-Elemente, die die Regel verwendet haben (Firefox Bug 1093953).
- Sie können nun Inhalte in der Webkonsole mit regulären Ausdrücken filtern (Firefox Bug 1441079).
- Die Browserkonsole erlaubt es jetzt, Nachrichten aus dem Inhaltsprozess anzuzeigen oder auszublenden, indem Sie das Kontrollkästchen mit der Bezeichnung Inhaltsnachrichten anzeigen aktivieren oder deaktivieren (Firefox Bug 1260877).
JavaScript-Debugger
- Sie können jetzt Suchen in allen Dateien im aktuellen Projekt vom Debugger aus, indem Sie
Shift+Strg+F(Windows oder Linux) oderShift+Cmd+F(macOS) drücken (Firefox Bug 1320325).
Netzwerküberwachung
- Die Anforderungsliste der Netzwerküberwachung erlaubt es jetzt, eine spezifische URL zu blockieren (Firefox Bug 1151368).
- Sie können eine Netzwerkanforderung jetzt ohne Bearbeitung der Methode, URL, Parameter und Header erneut senden, indem Sie den Erneut senden-Befehl im Kontextmenü verwenden (Firefox Bug 1422014).
- Das Kontextmenü des Headers-Tabs der Netzwerküberwachung erlaubt es jetzt, alle oder einige der Kopfzeileninformationen im JSON-Format in die Zwischenablage zu kopieren (Firefox Bug 1442249).
Seiteninspektor
- Ein Button wurde zum Regel-Panel des Seiteninspektors hinzugefügt, der es ermöglicht, die Anzeige von Medienabfragen für den Drucker zu toggeln (Firefox Bug 1534984).
- Das Schriften-Panel enthält jetzt einen Schieberegler zum Ändern des
letter-spacing(Firefox Bug 1536237). - Ein Warnsymbol erscheint neben CSS-Eigenschaften, die nicht unterstützt werden, oder Regeln, die ungültige Werte haben, um Ihnen zu helfen zu verstehen, warum bestimmte Styles nicht angewendet werden (Firefox Bug 1306054).
Speicherinspektor
- Sie können jetzt lokale und Sitzungsspeicher-Einträge löschen, indem Sie das Element im Speicherinspektor auswählen und die Rücktaste drücken (Firefox Bug 1522893).
Sonstiges
- Der Barrierefreiheitsinspektor enthält jetzt eine neue Funktion Auf Probleme überprüfen, die eine Reihe von Audit-Tools umfassen wird, um Barrierefreiheitsprobleme auf Ihren Webseiten hervorzuheben. Der erste verfügbare Check ist Kontrast, um Farbkontrastprobleme hervorzuheben.
- Die Voreinstellung, die die Sichtbarkeit von internen Erweiterungen (Systemerweiterungen und versteckte Erweiterungen) auf der Seite about:debugging steuert, wurde von
devtools.aboutdebugging.showSystemAddonszudevtools.aboutdebugging.showHiddenAddonsgeändert (Firefox Bug 1544372). - Der Modus für responsives Design wurde überarbeitet — der Dialog Geräteeinstellungen (Geräteauswahlmenü > Liste bearbeiten…) ist jetzt intuitiver und einfacher zu verwenden (Firefox Bug 1487857).
Entfernungen
- Das Kontrollkästchen "Add-on-Debugging aktivieren" wurde von der Seite about:debugging entfernt (Firefox Bug 1544813).
HTML
- Das
<track>-Element — dargestellt durchHTMLTrackElement— erhält jetzt eincuechange-Ereignis zusätzlich zu demTextTrackselbst, wenn der Texttrack durch ein Medienelement enthalten ist (Firefox Bug 1548731). <link>-Elemente unterstützen wieder dasdisabled-Attribut, allerdings mit anderem Verhalten. Wenndisabledauf ein<link>-Element zusammen mitrel="stylesheet"gesetzt wird, wird das referenzierte Stylesheet während des Seitenladens nicht geladen und wird bei Bedarf geladen, wenn dasdisabled-Attribut auffalsegeändert oder entfernt wird (Firefox Bug 1281135).
Entfernungen
<meta http-equiv="set-cookie">wird nicht mehr unterstützt (Firefox Bug 1457503).
CSS
-
CSS Scroll Snap wurde auf die neueste Version der Spezifikation aktualisiert (Firefox Bug 1312163) und (Firefox Bug 1544136), dies umfasst:
- 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 zur Kompatibilität mit anderen Browsern implementiert (Firefox Bug 866102). -
Unterstützung wurde für das
::marker-Pseudo-Element hinzugefügt (Firefox Bug 205202) und Animation für::marker-Pseudos (Firefox Bug 1538618) -
Wir haben
currentColorin einen berechneten Wert geändert (außer für diecolor-Eigenschaft) (Firefox Bug 760345). -
Unterstützung für die
ch-Längeneinheit wurde behoben, sodass sie jetzt der Spezifikation entspricht (Fallback für keine '0'-Glyphen, vertikale Metriken) (Firefox Bug 282126) -
Die
counter-set-Eigenschaft wurde implementiert. (Firefox Bug 1518201). -
Wir implementieren jetzt die Nummerierung von Listen mit einem eingebauten "list-item"-Zähler; dies behebt Fehler bei der Nummerierung von Listen (Firefox Bug 288704).
-
Selektormatching und Parsing-Unterstützung wurde für
::part()implementiert (Firefox Bug 1545430) und (Firefox Bug 1545425). -
CSS Transforms werden nun bei indirekt gerenderten Dingen unterstützt, z. B.
<mask>,<marker>,<pattern>,<clipPath>(Firefox Bug 1323962). -
Während wir die prefixed Versionen der verschiedenen Gradienteneigenschaften
linear-gradient(),radial-gradient(), undrepeating-radial-gradient()aus Kompatibilitätsgründen verfügbar halten, haben wir deren Parsing so überarbeitet, dass sie viel mehr wie die nicht-prefixed Versionen behandelt werden. Dies bedeutet, dass bestimmte bestehende Styles nicht mehr korrekt funktionieren werden.Insbesondere wird die komplizierte Syntax, die sowohl einen Winkel als auch eine Position nimmt, nicht mehr funktionieren, und das
toSchlüsselwort im<side-or-corner>-Parameter ist für die prefixed Gradienteneigenschaften nicht erforderlich. Sie werden ermutigt, die standardmäßigen, nicht-prefixed Gradienteneigenschaften zu verwenden, da sie jetzt weit verbreitet unterstützt werden (Firefox Bug 1547939).
Entfernungen
scroll-snap-coordinate,scroll-snap-destination,scroll-snap-type-xundscroll-snap-type-ywurden entfernt.- Die
scroll-snap-type-Eigenschaft wurde zu einer Langhand, sodass die alte Shorthand-Syntax wiescroll-snap-type:mandatorynicht 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-Objektmodell (CSSOM)
- Die Legacy-Eigenschaft
rulesund die MethodenaddRule()undremoveRule()wurden zurCSSStyleSheet-Schnittstelle hinzugefügt. Diese wurden von Internet Explorer 9 eingeführt und haben es nie ganz geschafft, abgestempelt zu werden, daher wurden sie hinzugefügt, um die Kompatibilität mit dem geringen Prozentsatz von Seiten 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-Eigenschaftnoreferrerwird jetzt unterstützt; falls angegeben, wird der Inhalt des neuen Fensters ohne das Teilen des Hostnamen, der IP-Adresse, der URL oder anderer identifizierender Informationen über das Hostgerät geladen (Firefox Bug 1527287). - Die
decode()-Methode aufHTMLImageElementist jetzt implementiert. Diese kann verwendet werden, um das Laden und Decodieren eines Bildes vor dem Hinzufügen zum DOM auszulösen (Firefox Bug 1501794). XMLHttpRequestwurde aktualisiert, sodass der nicht standardmäßigemoz-chunked-arraybuffer-Wert fürresponseTypenicht mehr akzeptiert wird. Code, der diesen noch verwendet, sollte aktualisiert werden, um die Fetch-API als Stream zu verwenden (Firefox Bug 1120171).XMLHttpRequestgibt jetzt eine Warnung in der Konsole aus, wenn Sie während des Umgangs mit einemunload,beforeunloadoderpagehide-Ereignis eine synchrone Anforderung durchführen (Firefox Bug 980902).- Die
cookie-Eigenschaft wurde von derHTMLDocument-Schnittstelle zurDocument-Schnittstelle verschoben, sodass Dokumente außer HTML Cookies verwenden können (Firefox Bug 144795). - Die Methoden
HTMLElement.focus()undSVGElement.focus()akzeptieren jetzt ein optionales Objekt, das eine boolesche OptionpreventScrollenthalten kann, die angibt, ob der Browser das Scrollen des neu fokussierten Elements in den Ansichtsbereich blockieren soll oder nicht (Firefox Bug 1374045).
DOM-Ereignisse
- Firefox für Android sendet jetzt nicht mehr fälschlicherweise ein
resize-Ereignis, bis nach dem ersten Frame gemalt wird; dies verbessert die Webkompatibilität mit Seiten, die nicht erwarten, dass dieses Ereignis auftritt (Firefox Bug 1528052). - Die Auslösung von Ereignissen für nicht-primäre Maustasten wurde angepasst, um die Spezifikation genauer zu befolgen; das
click-Ereignis wird nicht mehr gesendet, wenn nicht-primäre Tasten geklickt werden, sondern verwendetauxclick. Außerdem wirddblclicknicht mehr für nicht-primäre Tasten ausgelöst (Firefox Bug 1379466). - Die proprietäre
mozPressure-Eigenschaft wurde als veraltet markiert und wird jetzt eine Warnung in der Konsole auslösen (Firefox Bug 1165211).
Media, Web Audio und WebRTC
-
Aufgrund von Änderungen in den Richtlinien des Google Play Store kann der OpenH264-Codec, der verwendet wird, um AVC/H.264-Video in WebRTC-Verbindungen zu handhaben, ab Firefox 68 für Android nicht mehr heruntergeladen und installiert werden. Daher unterstützen frische Installationen von Firefox auf Android-Geräten jetzt nicht mehr AVC in WebRTC-Anrufen. Wenn Sie von früheren Versionen von Firefox aktualisieren und den Codec bereits heruntergeladen haben, funktioniert er weiterhin. Dies betrifft nicht andere 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 in denicecandidate-Ereignishandler übergeben wird, das Empfang eines Kandidaten anzeigt, tatsächlich bedeutet, dass keine weiteren Kandidaten kommen; wenn dies passiert, erreicht der ICE-Gathering (iceGatheringState)-Statuscomplete(Firefox Bug 1318167). -
Die
RTCRtpReceiver-MethodengetContributingSources()undgetSynchronizationSources()unterstützen jetzt Videospuren; zuvor funktionierten sie nur bei Audio (Firefox Bug 1534466). -
Die Web Audio API
MediaStreamTrackAudioSourceNode-Schnittstelle wird jetzt unterstützt, ebenso wie die MethodeAudioContext.createMediaStreamTrackSource()(Firefox Bug 1324548). -
RTCDataChannel.negotiatedist jetzt implementiert (Firefox Bug 1529695). -
Der
MediaStreamAudioSourceNode()-Konstruktor wurde aktualisiert, um der aktuellen Spezifikationsdefinition zu entsprechen, dass die "erste Audiospur" im Stream die Spur ist, deren ID als erste in lexikografischer Reihenfolge kommt (Firefox Bug 1324548). -
getUserMedia()darf nicht mehr aus einem unsicheren Kontext verwendet werden; der Versuch, dies zu tun, wirft jetzt eineNotAllowedError-Ausnahme. Sichere Kontexte sind solche, die über HTTPS geladen werden, solche, die über dasfile:///-Schema lokalisiert werden, und solche, die vonlocalhostgeladen werden. Wenn Sie vorerst müssen, können Sie die Fähigkeit, unsichere Aufrufe vongetUserMedia()durchzuführen, erneut aktivieren, indem Sie die Präferenzmedia.getusermedia.insecure.enabledauftruesetzen (Firefox Bug 1335740).Hinweis: In der Zukunft wird Firefox auch die
navigator.mediaDevices-Eigenschaft in unsicheren Kontexten entfernen und den Zugriff auf dieMediaDevices-APIs vollständig verhindern. Dies ist bereits der Fall in Nightly-Builds.
Entfernungen
- Die nicht standardmäßige Methode
XMLDocument.load()wurde entfernt (Firefox Bug 332175). - Die nicht standardmäßige Eigenschaft
XMLDocument.asyncwurde entfernt (Firefox Bug 1328138). - Der
RTCIceServer.credentialTypetoken-Wert wurde entfernt (Firefox Bug 1529595).
HTTP
- Der HTTP
Clear-Site-Data-Header unterstützt dasexecutionContexts-Direktiv nicht mehr. Dies wurde aufgrund von Problemen mit Interaktionen zwischen Verbindungen zwischen verschiedenen Arten von Daten zu verschiedenen Punkten im Navigationsprozess und der Art und Weise, wie die Spezifikation gestaltet ist, entfernt. Es wurde vorgeschlagen, dieses Direktive aus der Spezifikation zu entfernen, aus diesem Grund und anderen Gründen (Firefox Bug 1548034).
Entfernungen
- Das
Content-Security-Policy-Direktivrequire-sri-forwird nicht mehr unterstützt, wegen Bedenken bezüglich seines Standardisierungsstatus. Es war zuvor nur hinter einer Präferenz verfügbar, die standardmäßig deaktiviert war (Firefox Bug 1386214).
Sicherheit
- Aufgrund CVE-2019-11730: Die Same-Origin-Policy betrachtet alle Dateien in einem Verzeichnis als aus demselben Ursprung stammend, wurden Änderungen vorgenommen, sodass Firefox jetzt Dateien im selben Verzeichnis als aus verschiedenen Ursprüngen stammend betrachtet. Dies hat eine Reihe von Nebeneffekten darauf, was in Dokumenten funktionieren wird, die über file:// URLs geladen werden (siehe Firefox Bug 1558299 für nützliche Hintergrundforschung). Beispielsweise können Worker jetzt nicht mehr geladen werden.
WebDriver-Konformität (Marionette)
Fehlerbehebungen
- Wenn
WebDriver:SwitchToWindowdie Auswahl auf ein anderes Fenster ändert, wartet es jetzt auf seinefocus- undactivate-Ereignisse, bevor es zurückkehrt (Firefox Bug 1335085). - Der Fehler
TypeError: this.tabModal is nullwurde behoben, der manchmal auftrat, wenn mit Modaldialogen oder Benutzereingabeaufforderungen interagiert wurde (Firefox Bug 1538782).
Sonstiges
- Die Funktion zum erzwungenen Entladen von Hintergrund-Tabs bei niedrigem Speicherbedingungen wurde deaktiviert, um zu verhindern, dass übergeordnete Browser-Kontexte magisch verschwinden (Firefox Bug 1553748).
- Bevorzugte Inhaltsprozesse deaktiviert, die dazu führten, dass HTTP-Authentifizierungsdialoge nicht erschienen, wenn Sie nach dem Öffnen eines neuen Tabs zu einer Website navigierten (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 in Firefox 71 entfernt (Firefox Bug 1545811). - Ein
boolean-Flag,incognito, wurde zum proxy.RequestDetails-Objekt hinzugefügt. Wenntrue, wird angezeigt, dass dies eine private Browsing-Anfrage war (Firefox Bug 1545163). - Die webRequest.RequestFilter-Parameter können einen Inkognito-Parameter enthalten. Wenn angegeben, werden Anfragen, die nicht den Inkognito-Status (
trueoderfalse) erfüllen, herausgefiltert (Firefox Bug 1548177). - Ein
string-Wert,cookieStoreId, der die Cookie-Store-ID des aktuellen Kontextes darstellt, wurde zum 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 Versprechen, das von
browser.tabs.duplicate()zurückgegeben wird, löst jetzt sofort auf, bevor die Tabs vollständig geladen sind (Firefox Bug 1394376). - Unterstützung wurde für chrome.storage.managed hinzugefügt, um Web-Erweiterungseinstellungen über Enterprise-Policy zu implementieren (Firefox Bug 1230802).
proxyAuthorizationundconnectionIsolationinproxy.onRequestgelten jetzt nur noch für HTTPS-Proxys (Firefox Bug 1549368.
Manifest-Änderungen
- Unterstützung hinzugefügt für den
dark_theme-Schlüssel. Dieser Schlüssel erlaubt es einem statischen Thema, seine Erscheinung zu definieren, wenn Firefox das dunkle Farbschema verwendet (Firefox Bug 1525762).
Siehe auch
- Hacks Veröffentlichungsartikel: Firefox 68: BigInts, Kontrastüberprüfungen und die QuantumBar