Firefox 60 Versionshinweise für Entwickler
Dieser Artikel liefert Informationen über die Änderungen in Firefox 60, die Entwickler betreffen werden. Firefox 60 wurde am 9. Mai 2018 veröffentlicht.
Stylo kommt in Firefox für Android in 60
Firefox' neue parallele CSS-Engine — auch bekannt als Quantum CSS oder Stylo — die zuerst standardmäßig in Firefox 57 für Desktop aktiviert wurde, wurde nun in Firefox für Android aktiviert.
Änderungen für Webentwickler
>Entwicklerwerkzeuge
- In der CSS-Pane-Regelansicht (siehe CSS untersuchen und bearbeiten) wurden die Tastenkombinationen für präzise Wertinkremente (Erhöhung/Verringerung um 0,1) von
Alt+Up/DowninCtrl+Up/Downauf Linux und Windows geändert, um Kollisionen mit standardmäßigen OS-Level-Shortcuts zu vermeiden (siehe Firefox Bug 1413314). - Ebenfalls 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ändigungs-Liste. - Im Responsive Design Mode wurde ein Dropdown Reload when… hinzugefügt, das es Benutzern ermöglicht, das automatische Neuladen von Seiten zu aktivieren/deaktivieren, wenn die Touch-Simulation umgeschaltet wird oder wenn der simulierte User-Agent geändert wird. Weitere Details finden Sie unter Steuerung des Seitenladeverhaltens (Firefox Bug 1428816).
- Die
view_source.tab-Präferenz wurde entfernt, sodass Sie Ansicht Quelle nicht mehr zwischen dem Erscheinungsbild in einem neuen Tab oder neuem Fenster umschalten können. Quellseiten werden ab jetzt immer in neuen Tabs angezeigt (Firefox Bug 1418403).
HTML
Das Drücken der Eingabetaste in designMode und contenteditable fügt nun <div>-Elemente ein, wenn der Cursor in einem Inline-Element oder Textknoten ist, das ein Kind eines Block-Level-Bearbeitungshosts ist — anstatt <br>-Elemente einzufügen, wie es bisher der Fall war. 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-contentundplace-contentwurden gemäß der neuesten CSS Box Alignment Module Level 3 Spezifikation aktualisiert (Firefox Bug 1430817). - Die Eigenschaft
paint-orderwurde implementiert (Firefox Bug 1426146).
SVG
Keine Änderungen.
JavaScript
-
ECMAScript 2015-Module wurden standardmäßig aktiviert (Firefox Bug 1438139). Weitere Informationen finden Sie in 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">importundexportAussagen.
-
Die Methode
Array.prototype.values()wurde erneut hinzugefügt (Firefox Bug 1420101). Stellen Sie sicher, dass Ihr Code keine benutzerdefinierte 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
MakePublicKeyCredentialOptionsinPublicKeyCredentialCreationOptionsumbenannt; diese Änderung wurde in Firefox vorgenommen (Firefox Bug 1436473). - Die Präferenz
dom.workers.enabledwurde entfernt, was bedeutet, dass Worker nicht mehr deaktiviert werden können, da (Firefox Bug 1434934). - Die
bodyEigenschaft wird nun in derDocumentSchnittstelle implementiert, anstatt in derHTMLDocumentSchnittstelle (Firefox Bug 1276438). PerformanceResourceTimingist jetzt in Workern verfügbar (Firefox Bug 1425458).- Die Methode
PerformanceObserver.takeRecords()wurde implementiert (Firefox Bug 1436692). - Das Attribut
KeyboardEvent.keyCodeder Interpunktionstaste wird ungleich null, auch wenn das aktive Tastaturlayout keine ASCII-Zeichen erzeugt. Siehe diese Notizen für weitere Details. Bitte verwenden SieKeyboardEvent.keyCodenicht in neuen Anwendungen — verwenden Sie stattdessenKeyboardEvent.keyoderKeyboardEvent.code. - Die Methode
Animation.updatePlaybackRate()wurde implementiert (Firefox Bug 1436659). - Neue Regeln wurden zur Bestimmung der Schlüsselcodes von Interpunktionsschlüsseln hinzugefügt (Firefox Bug 1036008).
- Die Gecko-eigene Objektoption
storageder MethodeIDBFactory.open()wurde als veraltet markiert (Firefox Bug 1442560). - Promises können nun innerhalb von IndexedDB-Code verwendet werden (Firefox Bug 1193394).
DOM-Ereignisse
Keine Änderungen.
Service Worker
Keine Änderungen.
Medien und WebRTC
- Bei der Aufzeichnung oder Freigabe von Medien, die mit
getUserMedia()erlangt wurden, schaltet das Stummschalten der Kamera durch Setzen der EigenschaftMediaStreamTrack.enabledder entsprechenden Spur auffalsenun die "in use"-Anzeigeleuchte der Kamera aus, um dem Benutzer leichter zu zeigen, dass die Kamera nicht in Gebrauch ist (Firefox Bug 1299515). Siehe Benutzerprivatsphäre für weitere Details. Siehe auch diesen Blog-Post. - Das Entfernen eines Tracks von einer
RTCPeerConnectionmitremoveTrack()entfernt nicht länger denRTCRtpSenderdes Tracks aus der Senderliste der Peer-Verbindung, wie es vongetSenders()gemeldet wird (Firefox Bug 1290949). - Die Zeitstempel der Objekte
RTCRtpContributingSourceundRTCRtpSynchronizationSourcewurden zuvor basierend auf Werten gemeldet, die vonDate.getTime()zurückgegeben wurden. In Firefox 60 wurden diese korrigiert, um stattdessen die Performance Timing API korrekt zu verwenden (Firefox Bug 1433576). - Gemäß der Spezifikation wirft der Konstruktor
ConvolverNode()nun einenNotSupportedError-DOMException, wenn der referenzierteAudioBuffernicht über 1, 2 oder 4 Kanäle verfügt (Firefox Bug 1443228). - Der veraltete
RTCPeerConnection-EreignishandlerRTCPeerConnection.onremovestreamwurde entfernt; mittlerweile sollten Sie stattdessenremovetrack-Ereignisse verwenden (Firefox Bug 1442385). - Der primäre Name für
RTCDataChannelist nun tatsächlichRTCDataChannel, anstatt ein Alias fürDataChannelzu sein. Der NameDataChannelwird nicht mehr unterstützt (Firefox Bug 1173851).
Canvas und WebGL
- Wenn die Präferenz
privacy.resistFingerprintingauftruegesetzt ist, wird dieWEBGL_debug_renderer_info-WebGL-Erweiterung ab jetzt deaktiviert (Firefox Bug 1337157).
CSSOM
Keine Änderungen.
HTTP
SameSite-Cookies werden jetzt unterstützt (Firefox Bug 795346). SieheSet-Cookiefür weitere Informationen.
Sicherheit
Der X-Content-Type-Options-Header, wenn auf no-sniff gesetzt, folgt nun der Spezifikation für JavaScript MIME-Typen. Insbesondere text/json und application/json sind nicht länger gültige Werte (Firefox Bug 1431095).
Plugins
Keine Änderungen.
Sonstiges
Abfragen, die Anmeldeinformationen enthalten, können nun Verbindungen mit Abfragen teilen, die keine Anmeldeinformationen enthalten. Beispielsweise, wenn Anfragen der gleichen Herkunft einige Web-Schriften sowie einige mit Anmeldedaten versehene Benutzerdaten vom gleichen CDN anfordern, könnten beide eine Verbindung teilen, was möglicherweise zu einer schnelleren Abwicklung führt (Firefox Bug 1363284).
Entfernungen von der Webplattform
>HTML
Keine Änderungen.
CSS
- Die proprietären
-Eigenschaftswerte-moz-user-inputenabledunddisabledsind nicht mehr verfügbar (Firefox Bug 1405087). - Die proprietären Eigenschaften
-moz-border-top-colors,-moz-border-right-colors,-moz-border-bottom-colorsund-moz-border-left-colorswurden komplett von der Plattform entfernt (Firefox Bug 1429723).
JavaScript
Die nicht-standardmäßige expression closure-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:
headerURList nun optional- Beim Erstellen eines Browser-Themes wird ein eventuell angewendeter
text-shadowauf den Header-Text entfernt, wenn keinheaderURLangegeben 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