Firefox 59 für Entwickler
Dieser Artikel bietet Informationen über die Änderungen in Firefox 59, die Entwickler betreffen werden. Firefox 59 wurde am 13. März 2018 veröffentlicht.
Änderungen für Webentwickler
>Entwicklerwerkzeuge
- Der Netzwerk-Monitor zeigt im Reiter "Antwort" nun eine Vorschau des gerenderten HTML, wenn die Antwort HTML ist (Firefox-Bug 1353319).
- Die im Speicherinspektor angezeigten Cookie-Informationen (siehe Cookies) beinhalten jetzt eine sameSite-Spalte, die den Same-Site-Status jedes Cookies anzeigt (Firefox-Bug 1298370).
- Das Lineal-Werkzeug zeigt jetzt die aktuellen Abmessungen des Ansichtsfensters an (Firefox-Bug 1402633).
- Im Responsive Design Modus können Sie jetzt die Bildschirmabmessungen mit den Cursortasten einstellen (Firefox-Bug 1421663). Weitere Einzelheiten finden Sie im Abschnitt Bildschirmgröße einstellen.
- Die Anzeige der Raw headers im Reiter Headers des Netzwerk-Monitors beinhaltet jetzt den Statuscode der Antwort (Firefox-Bug 1419401).
HTML
- Das
<textarea>
Element unterstützt jetzt dasautocomplete
Attribut. Dies ermöglicht es, die automatische Formularausfüllung für das Element zu aktivieren oder zu deaktivieren.
CSS
- Die
overscroll-behavior
Eigenschaft und ihre zugehörigen langformigen Eigenschaften —overscroll-behavior-x
undoverscroll-behavior-y
— wurden implementiert (Firefox-Bug 951793) und sind standardmäßig in allen Versionen aktiviert (Firefox-Bug 1428879). - Das Verhalten von "ungewöhnlichen Elementen" (Elemente, die nicht rein durch CSS-Box-Konzepte gerendert werden, wie ersetzte Elemente) wurde aktualisiert, wenn ein
display
Wert voncontents
zugewiesen wird, gemäß Spezifikation (Firefox-Bug 1427292). Siehe Anhang B: Auswirkungen von display: contents auf ungewöhnliche Elemente für die genauen spezifizierten Verhaltensweisen. position
sticky
wird jetzt auf geeigneten Teilen von HTML-Tabellen unterstützt (z.B.<th>
Elemente) (Firefox-Bug 975644).calc()
wird jetzt in<color>
Werten unterstützt —rgb()
,rgba()
,hsl()
, undhsla()
(Firefox-Bug 984021).calc()
wird jetzt in Media-Query Werten unterstützt Firefox-Bug 1396057.- Die
@document
Regel wurde darauf beschränkt, nur in Nutzer- und UA-Stylesheets verwendet zu werden (Firefox-Bug 1035091). - Implementierung der
font-optical-sizing
Eigenschaft (Firefox-Bug 1435692).
SVG
Keine Änderungen.
JavaScript
Keine Änderungen.
APIs
Neue APIs
PointerEvents
wurden in Firefox Desktop aktiviert (Firefox-Bug 1411467).
DOM
- Der
EventTarget()
Konstruktor wurde implementiert (Firefox-Bug 1379688). - Der
Response()
Konstruktor kann jetzt einennull
Wert für seinenbody
Parameter akzeptieren, gemäß Spezifikation (Firefox-Bug 1303025).
DOM-Ereignisse
- Die
Event.composedPath()
Methode wurde implementiert (Firefox-Bug 1412775).
Service Worker
- Der Service-Worker Clients API kann nun Fenster in einem separaten Browserprozess finden und mit ihnen kommunizieren (Firefox-Bug 1293277).
- Verschachtelte about:blank und about:srcdoc Iframes werden jetzt den übergeordneten Service Worker übernehmen. Geändert in (Firefox-Bug 1293277) und (Firefox-Bug 1426979).
- Wenn ein Service Worker eine
Response
zuFetchEvent.respondWith()
bereitstellt, wird derResponse.url
Wert jetzt an die abgefangene Netzwerk-Anfrage als endgültige aufgelöste URL weitergeleitet. In der Vergangenheit wurde hierfürFetchEvent.request.url
verwendet. Dies bedeutet zum Beispiel, wenn ein Service Worker ein Stylesheet oder ein Worker-Skript abfängt, dann wirdResponse.url
verwendet, um alle relativen@import
oderimportScripts()
Subresource-Ladungen zu lösen (Firefox-Bug 1222008). FetchEvent.respondWith()
wird nun einen Netzwerkfehler auslösen, wennFetchEvent.request.mode
"same-origin" ist und der bereitgestellteResponse.type
"cors" ist. (Firefox-Bug 1222008)
Medien und WebRTC
-
Die
MediaStreamTrack
EigenschaftMediaStreamTrack.muted
, zusammen mit den Ereignissenmute
undunmute
sowie den dazugehörigen Ereignis-Handlern,onmute
undonunmute
, wurden implementiert. Dermuted
Zustand eines Tracks zeigt an, dass der Track momentan keine Mediendaten liefern kann.Hinweis: Der
muted
Zustand eines Tracks ist nicht nützlich für das, was üblicherweise als Stummschalten und Aufheben der Stummschaltung eines Tracks gedacht ist. Verwenden Sie stattdessen dieenabled
Eigenschaft; das Setzen vonenabled
auffalse
führt dazu, dass der Track nur leere Frames ausgibt. -
Firefox 59 auf Android unterstützt nun Apples HTTPS Live Streaming (HLS) Protokoll für sowohl Audio- als auch Videostreaming. Dieses nicht-standardisierte Protokoll wird auf mobilen Geräten unterstützt, um die Kompatibilität mit Websites zu verbessern, die es für mobiles Streaming erfordern. Es gibt derzeit keine Pläne, es in Firefox Desktop zu implementieren.
-
Die
RTCRtpReceiver
MethodengetContributingSources()
undgetSynchronizationSources()
wurden implementiert, um Informationen über die Quellen jedes RTP-Streams zu bieten. Allerdings gab es eine Spezifikationsänderung vor der Veröffentlichung, und wir haben diese standardmäßig hinter der Präferenzmedia.peerconnection.rtpsourcesapi.enable
deaktiviert (Firefox-Bug 1363667, Firefox-Bug 1430213, und Firefox-Bug 1433236). -
Das
RTCRtpTransceiver
Interface wurde nun implementiert, da die Firefox-Implementierung von WebRTC nun Transceiver unterstützt, wobeiRTCPeerConnection
und andere Schnittstellen gemäß der neuesten Spezifikation aktualisiert wurden. -
Die
RTCPeerConnection.addTransceiver()
Methode wurde hinzugefügt. Außerdem wurde das Verhalten vonaddTrack()
aktualisiert, um bei Bedarf einen Transceiver zu erstellen. -
Unterstützung für WebVTT Regionen wurde in Firefox 58 implementiert, war aber standardmäßig deaktiviert. Sie sind jetzt standardmäßig verfügbar (Firefox-Bug 1415805).
-
Firefox unterstützt nun WebVTT
REGION
Definitionsblöcke, deren Einstellungslisten eine Einstellung pro Zeile enthalten, anstatt alle Einstellungen in derselben Zeile der WebVTT-Datei (Firefox-Bug 1415821).
Canvas und WebGL
Keine Änderungen.
CSSOM
Das CSSNamespaceRule
Interface und seine namespaceURL
und prefix
Eigenschaften wurden implementiert (Firefox-Bug 1326514).
HTTP
Keine Änderungen.
Sicherheit
- Die Navigation auf oberster Ebene zu
data:
URLs wurde blockiert Firefox-Bug 1401895. Weitere Einzelheiten finden Sie unter Blocking Top-Level Navigations to data URLs for Firefox 59. - Die
SAMEORIGIN
Direktive desX-Frame-Options
Headers wurde geändert, sodass nicht nur das IFrame auf oberster Ebene im selben Ursprung ist, sondern auch alle dessen Vorfahren (Firefox-Bug 725490). - Bildressourcen, die aus anderen Ursprüngen als dem aktuellen Dokument geladen werden, können keine HTTP-Authentifizierungsdialoge mehr auslösen (Firefox-Bug 1423146).
- Die HTTP-Authentifizierung verwendet nun
utf-8
Kodierung für Benutzernamen und Passwörter (anstattISO-8859-1
), um gleiche Bedingungen mit anderen Browsern zu schaffen und potenzielle Probleme zu vermeiden, wie in Firefox-Bug 1419658 beschrieben. - Täglich wird die HSTS-Preload-Liste von Google aktualisiert. Normalerweise ist dies keine Erwähnung wert, aber in dieser Version wurden neue TLDs eingeschlossen, insbesondere
.app
und.dev
. Während sie neue TLDs sind, könnten Entwickler sie für lokale Entwicklung genutzt haben und von dieser Änderung überrascht sein. Beachten Sie, dass reservierte TLDs stattdessen für die lokale Entwicklung verwendet werden sollten.
Plugins
Keine Änderungen.
Sonstiges
Keine Änderungen.
Entfernung von der Webplattform
>HTML
Das nicht-standardisierte version
Parameter des <script>
Elements im type
Attribut (z.B. type="application/javascript;version=1.8"
) wurde entfernt (Firefox-Bug 1428745).
CSS
- Die proprietäre
mozmm
<length>
Einheit wurde entfernt (Firefox-Bug 1416564). - Die proprietären Eigenschaften
-moz-border-top-colors
,-moz-border-right-colors
,-moz-border-bottom-colors
, und-moz-border-left-colors
wurden auf die Verwendung im Chrome-Code beschränkt (Firefox-Bug 1417200).
JavaScript
- Die nicht standardmäßigen bedingten catch-Klauseln wurden entfernt (Firefox-Bug 1228841).
APIs
- Die nicht standardmäßige Methode
Event.getPreventDefault()
wurde entfernt. Sie sollten stattdessen dieEvent.defaultPrevented
Eigenschaft verwenden, um zu bestimmen, obpreventDefault()
bei demEvent
aufgerufen wurde. - Die proprietäre
Navigator.mozNotification
Eigenschaft und dieDesktopNotification
Schnittstelle wurden entfernt, zugunsten der standardisierten Notifications API (Firefox-Bug 952453). - Die proprietäre Methode
window.external.addSearchEngine()
wurde entfernt (Firefox-Bug 862147). Siehe auchWindow.external
für weitere Details. - Die nicht standardmäßige Firefox-spezifische
HTMLMediaElement
EigenschaftmozAutoplayEnabled
wurde entfernt.
SVG
Unterstützung für das accessKey
Feature von SMIL wurde entfernt (Firefox-Bug 1423098).
Sonstiges
Unterstützung für die nicht standardmäßigen pcast:
und feed:
Protokolle wurde aus Firefox entfernt (Firefox-Bug 1420622).
Änderungen für Add-on und Mozilla Entwickler
>WebExtensions
-
Thema Updates:
- neue Eigenschaften:
colors.background_tab_text
,colors.toolbar_field_border
- alle Farbeigenschaften unterstützen jetzt sowohl Chrome-Style-Arrays als auch CSS-Farbwerte.
- neue Eigenschaften:
-
Neue Browser-Einstellungen:
-
Neue
tabs
APIs: -
Die
contextMenus
API unterstützt nun einen "bookmark" Kontext. -
Neue
contentScripts
API ermöglicht die Registrierung von Contentskripten zur Laufzeit. -
Neue
pageAction
,browserAction
,SidebarAction
APIs:browserAction/pageAction/sidebarAction.set*
Funktionen akzeptieren jetztnull
, um Änderungen rückgängig zu machen.browserAction.isEnabled()
,pageAction.isShown()
,sidebarAction.isOpen()
Funktionen.
-
Neue Option in
page_action
um Seitenaktionen standardmäßig anzuzeigen. -
Neue Werte für
protocol_handlers
:- "ssb" für Secure Scuttlebutt Kommunikation
- "dat" für DATproject
- "ipfs", "ipns", "dweb" für IPFS
-
Neue
privacy.websites
Einstellung "cookieConfig". -
Unterstützung in der
cookies
API für First-Party-Isolation. -
Neue Option
upgradeToSecure
inwebRequest
.