Firefox 60 für Entwickler
Dieser Artikel bietet Informationen über die Änderungen in Firefox 60, die Entwickler betreffen werden. Firefox 60 wurde am 9. Mai 2018 veröffentlicht.
Stylo kommt zu Firefox für Android in Version 60
Firefox' 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
Entwicklerwerkzeuge
- In der CSS-Pane-Regelansicht (siehe Untersuchen und Bearbeiten von CSS) haben sich die Tastenkombinationen für präzise Werteänderungen (Erhöhung/Verringerung um 0,1) von
Alt
+Up
/Down
aufCtrl
+Up
/Down
auf Linux und Windows geändert, um Konflikte mit den Standard-OS-Ebene-Kürzeln zu vermeiden (siehe Firefox Bug 1413314). - Auch in der CSS-Pane-Regelansicht werden CSS-Variablennamen jetzt 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 deklariert haben, in einer Autovervollständigungsliste. - Im Responsive Design Modus wurde ein Neuladen bei… Dropdown-Menü hinzugefügt, das Benutzern ermöglicht, das automatische Seiten-Reload aktivieren/deaktivieren, wenn die Touch-Simulation umgeschaltet oder der simulierte User-Agent geändert wird. Weitere Details finden Sie unter Kontrolle des Seiten-Reload-Verhaltens (Firefox Bug 1428816).
- Die
view_source.tab
-Einstellung wurde entfernt, sodass Sie den Quelltext anzeigen-Modus nicht mehr umschalten können, um in einem neuen Tab oder Fenster zu erscheinen. Seitenquellen erscheinen von nun an immer in neuen Tabs (Firefox Bug 1418403).
HTML
Durch Drücken der Eingabetaste in designMode
und contenteditable
werden jetzt <div>
-Elemente eingefügt, wenn der Cursor in einem Inline-Element oder Textknoten steht, das ein Kind eines Block-level-Bearbeitungshosts ist – anstatt <br>
-Elemente wie bisher einzufügen. Wenn Sie das alte Verhalten in Ihrer App verwenden möchten, können Sie dies mit document.execCommand()
tun (Firefox Bug 1430551).
CSS
- Die Werte der Eigenschaften
align-content
,align-items
,align-self
,justify-content
undplace-content
wurden gemäß dem 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 wurden standardmäßig aktiviert (Firefox Bug 1438139). Weitere Informationen finden Sie unter ES6 In Depth: Modules und ES modules: A cartoon deep dive, oder konsultieren Sie die MDN-Referenzdokumentation:
<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 Dictionary-Objekt
MakePublicKeyCredentialOptions
inPublicKeyCredentialCreationOptions
umbenannt; diese Änderung wurde in Firefox vorgenommen (Firefox Bug 1436473). - Die Einstellung
dom.workers.enabled
wurde entfernt, was bedeutet, dass Worker nicht mehr deaktiviert werden können (Firefox Bug 1434934). - Die
body
-Eigenschaft ist jetzt auf derDocument
-Schnittstelle implementiert, anstatt auf derHTMLDocument
-Schnittstelle (Firefox Bug 1276438). PerformanceResourceTiming
ist jetzt in Workern verfügbar (Firefox Bug 1425458).- Die Methode
PerformanceObserver.takeRecords()
wurde implementiert (Firefox Bug 1436692). - Die Attribut des
KeyboardEvent.keyCode
für Zeichensetzungs-Tasten wird nun ungleich null, auch wenn das aktive Tastaturlayout keine ASCII-Zeichen produziert. Weitere Details finden Sie in diesen Notizen. Bitte verwenden Sie nichtKeyboardEvent.keyCode
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 hinzugefügt (Firefox Bug 1036008).
- Die ausschließlich Gecko-spezifische Optionsobjekt-Option
storage
der MethodeIDBFactory.open()
wurde als veraltet markiert (Firefox Bug 1442560). - Promises können jetzt im IndexedDB-Code verwendet werden (Firefox Bug 1193394).
DOM Events
Keine Änderungen.
Service Worker
Keine Änderungen.
Media und WebRTC
- Beim Aufzeichnen oder Teilen von Medien, die mit
getUserMedia()
erhalten wurden, wird das Indikatorlicht "in Benutzung" der Kamera ausgeschaltet, wenn die Kamera durch Setzen der entsprechenden Spur der EigenschaftMediaStreamTrack.enabled
auffalse
stummgeschaltet wird, um dem Benutzer zu helfen, leichter zu erkennen, dass die Kamera nicht in Benutzung ist (Firefox Bug 1299515). Weitere Informationen finden Sie unter Benutzerdatenschutz. Siehe auch diesen Blogbeitrag. - Das Entfernen einer Spur von einer
RTCPeerConnection
durchremoveTrack()
entfernt nicht mehr denRTCRtpSender
der Spur aus der Liste der Sender der Peer-Verbindung, wie sie vongetSenders()
gemeldet wird (Firefox Bug 1290949). - Die
RTCRtpContributingSource
- undRTCRtpSynchronizationSource
-Objekte verwendeten bisher Werte, die vonDate.getTime()
zurückgegeben wurden. In Firefox 60 wurden diese korrigiert, um stattdessen korrekt die Performance Timing API zu verwenden (Firefox Bug 1433576). - Gemäß der Spezifikation löst der Konstruktor
ConvolverNode()
jetzt einenNotSupportedError
DOMException
aus, wenn der referenzierteAudioBuffer
nicht 1, 2 oder 4 Kanäle hat (Firefox Bug 1443228). - Der veraltete Eventhandler
RTCPeerConnection.onremovestream
vonRTCPeerConnection
wurde entfernt; stattdessen sollten jetztremovetrack
Ereignisse verwendet werden (Firefox Bug 1442385). - Der primäre Name für die Schnittstelle
RTCDataChannel
ist jetzt tatsächlichRTCDataChannel
und nicht mehr ein Alias fürDataChannel
. Der NameDataChannel
wird nicht mehr unterstützt (Firefox Bug 1173851).
Canvas und WebGL
- Wenn die
privacy.resistFingerprinting
-Einstellung auftrue
gesetzt ist, wird dieWEBGL_debug_renderer_info
WebGL-Erweiterung zukünftig deaktiviert (Firefox Bug 1337157).
CSSOM
Keine Änderungen.
HTTP
SameSite
-Cookies werden jetzt unterstützt (Firefox Bug 795346). SieheSet-Cookie
für weitere Informationen.
Sicherheit
Der X-Content-Type-Options
-Header, wenn auf no-sniff
gesetzt, folgt jetzt der Spezifikation für JavaScript MIME-Typen. Insbesondere text/json
und application/json
sind keine gültigen Werte mehr (Firefox Bug 1431095).
Plugins
Keine Änderungen.
Sonstiges
Abfragen, die Anmeldeinformationen enthalten, können jetzt Verbindungen mit Abfragen teilen, die keine Anmeldeinformationen enthalten. Zum Beispiel, wenn die gleiche Herkunft einige Webfonts wie auch einige abgerufene Benutzerdaten von demselben CDN anfordert, könnten beide eine Verbindung teilen, was möglicherweise zu einer schnelleren Bearbeitung führt (Firefox Bug 1363284).
Entfernungen aus der Webplattform
HTML
Keine Änderungen.
CSS
- Die proprietären Werte
enabled
unddisabled
der Eigenschaft-moz-user-input
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-standardisierte Syntax der Expression Closures 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-Themas wird jeglicher angewandter
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