Firefox 60 für Entwickler
Dieser Artikel bietet Informationen über Veränderungen in Firefox 60, die Entwickler betreffen werden. Firefox 60 wurde am 9. Mai 2018 veröffentlicht.
Stylo kommt in Firefox für Android ab Version 60
Firefox's neue parallele CSS-Engine — auch bekannt als Quantum CSS oder Stylo — die zuerst in Firefox 57 für Desktop standardmäßig aktiviert wurde, wurde jetzt in Firefox für Android aktiviert.
Änderungen für Webentwickler
Entwicklertools
- In der CSS-Pane-Regelsicht (siehe CSS untersuchen und bearbeiten) wurden die Tastenkürzel für präzise Wertänderungen (erhöhen/verringern um 0,1) von
Alt
+Up
/Down
zuCtrl
+Up
/Down
auf Linux und Windows geändert, um Kollisionen mit den standardmäßigen Betriebssystem-Tastenkombinationen zu vermeiden (siehe Firefox Bug 1413314). - Ebenfalls in der CSS-Pane-Regelsicht werden nun CSS-Variablennamen automatisch vervollständigt (Firefox Bug 1422635). Wenn Sie
var(
in einen Eigenschaftswert eingeben und dann einen Bindestrich (-
) tippen, erscheinen alle Variablen, die Sie in Ihrem CSS definiert haben, in einer Autovervollständigungsliste. - Im Responsive Design Mode wurde ein Neuladen bei... Dropdown hinzugefügt, um es den Nutzern zu ermöglichen, automatisches Neuladen der Seite beim Umschalten der Touch-Simulation oder beim Ändern des simulierten User-Agents zu aktivieren bzw. zu deaktivieren. Siehe Steuerung des Seitenneuladens für mehr Details (Firefox Bug 1428816).
- Die
view_source.tab
-Präferenz wurde entfernt, wodurch der Quelltext anzeigen-Modus nicht mehr zwischen neuer Registerkarte und neuem Fenster umgeschaltet werden kann. Quelltexte erscheinen ab sofort immer in neuen Tabs (Firefox Bug 1418403).
HTML
Das Drücken der Enter-Taste in designMode
und contenteditable
fügt nun <div>
-Elemente ein, wenn sich die Einfügemarke in einem Inline-Element oder Textknoten befindet, welcher ein Kind eines Block-Editing-Hosts ist — anstatt wie bisher <br>
-Elemente einzufügen. Wenn Sie das alte Verhalten in Ihrer Anwendung verwenden möchten, können Sie dies mit document.execCommand()
umsetzen. Siehe Unterschiede in der Markup-Erzeugung für weitere Details (siehe auch Firefox Bug 1430551).
CSS
- Die Werte der Eigenschaften
align-content
,align-items
,align-self
,justify-content
undplace-content
wurden gemäß der neuesten CSS Box Alignment Module Level 3 Spezifikation aktualisiert (Firefox Bug 1430817). - Die Eigenschaft
paint-order
wurde implementiert (Firefox Bug 1426146).
SVG
Keine Änderungen.
JavaScript
-
ECMAScript 2015 Module sind standardmäßig aktiviert (Firefox Bug 1438139). Siehe ES6 In Depth: Modules und ES modules: A cartoon deep dive für weitere Informationen oder konsultieren Sie die MDN-Referenzdokumente:
<script src="main.js" type="module">
und<script nomodule src="fallback.js">
import
undexport
Anweisungen.
-
Die Methode
Array.prototype.values()
wurde erneut hinzugefügt (Firefox Bug 1420101). Stellen Sie sicher, dass Ihr Code keine eigene Implementierung dieser Methode enthält.
APIs
Neue APIs
- Die Web Authentication API wurde aktiviert (Firefox Bug 1432542).
DOM
- In der Web Authentication API wurde das Wörterbuch-Objekt
MakePublicKeyCredentialOptions
inPublicKeyCredentialCreationOptions
umbenannt; diese Änderung wurde in Firefox umgesetzt (Firefox Bug 1436473). - Die Präferenz
dom.workers.enabled
wurde entfernt, was bedeutet, dass Worker nicht mehr deaktiviert werden können (Firefox Bug 1434934). - Die
body
Eigenschaft wird nun auf derDocument
Schnittstelle umgesetzt, statt auf derHTMLDocument
Schnittstelle (Firefox Bug 1276438). PerformanceResourceTiming
ist nun in Workern verfügbar (Firefox Bug 1425458).- Die Methode
PerformanceObserver.takeRecords()
wurde implementiert (Firefox Bug 1436692). - Das Attribut
KeyboardEvent.keyCode
der Zeichensetzungstasten wird nicht mehr null, selbst wenn das aktive Tastaturlayout keine ASCII-Zeichen erzeugt. Siehe diese Notizen für weitere Details. Bitte verwenden SieKeyboardEvent.keyCode
nicht in neuen Anwendungen — verwenden Sie stattdessenKeyboardEvent.key
oderKeyboardEvent.code
. - Die Methode
Animation.updatePlaybackRate()
wurde implementiert (Firefox Bug 1436659). - Neue Regeln zur Bestimmung der keyCode-Werte von Zeichensetzungstasten wurden eingeführt (Firefox Bug 1036008).
- Die Gecko-exklusive Optionsobjekt-
storage
-Option der MethodeIDBFactory.open()
(siehe Experimentelles Gecko-Optionsobjekt) wurde als veraltet markiert (Firefox Bug 1442560). - Promises können jetzt innerhalb von IndexedDB-Code verwendet werden (Firefox Bug 1193394).
DOM-Ereignisse
Keine Änderungen.
Service-Arbeiter
Keine Änderungen.
Medien und WebRTC
- Wenn Medien aufgezeichnet oder geteilt werden, die mit
getUserMedia()
erfasst wurden, wird das Kamera-Anzeigelicht für "in Benutzung" nun abgeschaltet, wenn die Kamera durch Setzen derMediaStreamTrack.enabled
Eigenschaft der entsprechenden Spur auffalse
stummgeschaltet wird, um dem Nutzer einfacher zu zeigen, dass die Kamera nicht in Benutzung ist (Firefox Bug 1299515). Siehe Datenschutz der Benutzer für mehr Details. Siehe auch diesen Blogbeitrag. - Ein Track wird aus einer
RTCPeerConnection
nun nicht mehr vollständig entfernt, wenn er mitremoveTrack()
entfernt wird. DieRTCRtpSender
des Tracks bleiben in der vongetSenders()
gemeldeten Liste der Sender der Peer-Verbindung enthalten (Firefox Bug 1290949). - Die
RTCRtpContributingSource
undRTCRtpSynchronizationSource
Objekte verwendeten zuvor Zeitstempel, die auf Werten basierten, welche vonDate.getTime()
zurückgegeben werden. In Firefox 60 wurden diese auf die korrekte Nutzung der Performance Timing API umgestellt (Firefox Bug 1433576). - Gemäß der Spezifikation gibt der Konstruktor
ConvolverNode()
nun einenNotSupportedError
DOMException
aus, wenn der referenzierteAudioBuffer
nicht 1, 2 oder 4 Kanäle hat (Firefox Bug 1443228). - Der veraltete
RTCPeerConnection.onremovestream
Ereignishandler wurde entfernt; mittlerweile sollten Sie stattdessenremovetrack
Ereignisse verwenden (Firefox Bug 1442385). - Der Hauptname für
RTCDataChannel
ist jetzt tatsächlichRTCDataChannel
, anstatt ein Alias fürDataChannel
zu sein. Der NameDataChannel
wird nicht mehr unterstützt (Firefox Bug 1173851).
Canvas und WebGL
- Wenn die
privacy.resistFingerprinting
Präferenz auftrue
gesetzt ist, wird dieWEBGL_debug_renderer_info
WebGL-Erweiterung von nun an deaktiviert (Firefox Bug 1337157).
CSSOM
Keine Änderungen.
HTTP
SameSite
Cookies werden jetzt unterstützt (Firefox Bug 795346). SieheSet-Cookie
für mehr Informationen.
Sicherheit
Der X-Content-Type-Options
Header, wenn auf no-sniff
gesetzt, folgt nun der Spezifikation für JavaScript MIME-Typen. Insbesondere sind text/json
und application/json
keine gültigen Werte mehr (Firefox Bug 1431095).
Plugins
Keine Änderungen.
Sonstiges
Abfragen, die Anmeldedaten enthalten, können jetzt Verbindungen mit Abfragen teilen, die keine Anmeldedaten enthalten. Zum Beispiel, wenn dieselbe Herkunft sowohl einige Webfont-Anfragen als auch einige Anfragen mit Anmeldedaten vom selben CDN stellt, könnten beide eine Verbindung teilen, was potenziell zu einer schnelleren Antwort führen könnte (Firefox Bug 1363284).
Entfernungen aus der Web-Plattform
HTML
Keine Änderungen.
CSS
- Die proprietären
-moz-user-input
Eigenschaftswerteenabled
unddisabled
sind nicht mehr verfügbar (Firefox Bug 1405087). - Die proprietären Eigenschaften
-moz-border-top-colors
,-moz-border-right-colors
,-moz-border-bottom-colors
und-moz-border-left-colors
wurden vollständig aus der Plattform entfernt (Firefox Bug 1429723).
JavaScript
Die nicht-standardmäßige Ausdrucksschließung Syntax wurde entfernt (Firefox Bug 1426519).
APIs
Keine Änderungen.
SVG
Keine Änderungen.
Sonstiges
Keine Änderungen.
Änderungen für Add-on- und Mozilla-Entwickler
WebExtensions
Theme-API:
-
headerURL ist jetzt optional
-
Beim Erstellen eines Browser Themes wird ein eventuell angewendeter
text-shadow
auf den Header-Text entfernt, wenn keineheaderURL
angegeben ist (siehe Firefox Bug 1404688). -
Neue Eigenschaften werden unterstützt:
- tab_line
- tab_selected
- popup
- popup_border
- popup_text
- tab_loading
- icons
- icons_attention
- frame_inactive
- button_background_active
- button_background_hover
Ältere Versionen
- Firefox 59 for developers
- Firefox 58 for developers
- Firefox 57 for developers
- Firefox 56 for developers
- Firefox 55 for developers
- Firefox 54 for developers
- Firefox 53 for developers
- Firefox 52 for developers
- Firefox 51 for developers
- Firefox 50 for developers
- Firefox 49 for developers
- Firefox 48 for developers
- Firefox 47 for developers
- Firefox 46 for developers
- Firefox 45 for developers
- Firefox 44 for developers
- Firefox 43 for developers
- Firefox 42 for developers
- Firefox 41 for developers
- Firefox 40 for developers
- Firefox 39 for developers
- Firefox 38 for developers
- Firefox 37 for developers
- Firefox 36 for developers
- Firefox 35 for developers
- Firefox 34 for developers
- Firefox 33 for developers
- Firefox 32 for developers
- Firefox 31 for developers
- Firefox 30 for developers
- Firefox 29 for developers