Firefox 64 für Entwickler
Dieser Artikel bietet Informationen über die Änderungen in Firefox 64, die Entwickler betreffen. Firefox 64 wurde am 11. Dezember 2018 veröffentlicht.
Änderungen für Webentwickler
Entwicklerwerkzeuge
-
Die Accessibility Info-Bar wurde erweitert, um Informationen über das Farbkontrastverhältnis von Text oder Bildern auf der Seite anzuzeigen (Firefox Bug 1473037).
-
Die Geräteauswahl des Responsive Design Mode wird nun zwischen den Sitzungen gespeichert (Firefox Bug 1248619).
-
Ressourcen, die möglicherweise von der Tracking Protection betroffen sind, werden jetzt im Network Monitor angezeigt (Firefox Bug 1333994).
-
Die Web-Konsole hat Verbesserungen bezüglich der Eingabe und Auswertung von Code erhalten:
- Die Autocomplete für Konsolenausdrücke ist nun nicht mehr case-sensitiv (Firefox Bug 672733).
- Sie können jetzt die Konsolenausdruckgeschichte mit einer bash-ähnlichen Rückwärtssuche durchgehen (Firefox Bug 1024913).
- Im Konsolen-Eingabefeld und im -Ausgabefeld wird jetzt der bewertete Code mit Syntax-Hervorhebung dargestellt (Firefox Bug 1463669).
-
Auch das Debuggen im JavaScript-Debugger hat einige Verbesserungen erhalten:
- Beim Verlassen einer Funktion, während diese im Debugger ist, wird jetzt der Rückgabewert übersprungen (Firefox Bug 923975).
Entfernungen
- Die Developer Tools GCLI wurde entfernt (Firefox Bug 1429421).
HTML
Keine Änderungen.
CSS
- Die Funktionalitäten der CSS Scrollbars Spezifikation sind nun standardmäßig aktiviert (Firefox Bug 1492012).
- Die Interaktions-Media-Features, einschließlich
pointer:coarse
, wurden implementiert (Firefox Bug 1035774). Für die Implementierung vonany-pointer
undany-hover
siehe Firefox Bug 1483111. - Die Medienfunktion
prefers-reduced-motion
wird nun in Firefox für Android unterstützt (Firefox Bug 1478505). - CSS
<gradient>
Werte unterstützen jetzt die Syntax für mehrfache Farbstopps, z. B. kannyellow 25%, yellow 50%
nun alsyellow 25% 50%
geschrieben werden (Firefox Bug 1352643). - Die
text-transform
Eigenschaft akzeptiert nun den Wertfull-size-kana
(Firefox Bug 1498148). - Unterstützung wurde hinzugefügt für
-webkit-appearance
, um damit verbundene Webkompatibilitätsprobleme zu lindern (Firefox Bug 1368555). - In engem Zusammenhang mit dem obigen Update haben wir die meisten Firefox-spezifischen
-moz-appearance
Werte entfernt (Firefox Bug 1496720). display
:list-item
wird nun auf<legend>
Elementen unterstützt (Firefox Bug 1486602).- SVG
path()
s, wie sie inoffset-path
verwendet werden, sind nun animierbar (Firefox Bug 1486094). - Wenn eine Selektorkette oder -gruppe ein
-webkit-
präfixiertes Pseudoelement enthält, macht dieses Pseudoelement es nicht mehr ungültig (für Details siehe Firefox Bug 1424106 und für die Aktivierung dieser Funktion sehen Sie Firefox Bug 1486325).
Entfernungen
- Die nicht standardmäßigen
-moz-box
und-moz-inline-box
display
Werte wurden aus Webinhalten entfernt (Firefox Bug 1496961). - Das nicht standardmäßige
::-moz-tree
Pseudo-Element wurde aus Webinhalten entfernt (Firefox Bug 1496961). - Die Einstellung
layout.css.filters.enabled
wurde entfernt; CSS-Filter können nicht mehr deaktiviert werden (Firefox Bug 1408841). - Eine frühere Änderung — um die Werte der 2-Werte-
overflow
Syntax zu tauschen, sodass der Block zuerst und Inline zuletzt angegeben wird (Firefox Bug 1481866) — wurde rückgängig gemacht (Firefox Bug 1492567). Siehe Bug 1481866 Kommentar 14 für die Begründung.
SVG
Keine Änderungen.
JavaScript
- Der TC39 Well-formed JSON.stringify Vorschlag wurde implementiert, um zu verhindern, dass
JSON.stringify
ungültige Unicode-Strings zurückgibt (Firefox Bug 1469021). - Proxy-Funktionen können nun an
Function.prototype.toString
.call()
übergeben werden (Firefox Bug 1440468). - Im
WebAssembly.Global()
Konstruktor wird, wenn kein Wert angegeben wird, ein typisierter 0-Wert verwendet. Dies wird durch denDefaultValue
Algorithmus spezifiziert (Firefox Bug 1490286).
APIs
DOM
-
Eine Reihe von Änderungen im Zusammenhang mit der Fullscreen API wurden implementiert:
- Die API wurde unverändert veröffentlicht (Firefox Bug 1269276).
- Die Methoden
Element.requestFullscreen()
undDocument.exitFullscreen()
geben jetzt beide einPromise
zurück, das aufgelöst wird, wenn die Modusänderung abgeschlossen ist (Firefox Bug 1188256 und Firefox Bug 1491212). - Zuvor wurden die
fullscreenchange
undfullscreenerror
Ereignisse zuerst an dasDocument
und dann an dasElement
gesendet. Dies wurde umgekehrt, sodass das Element das Ereignis zuerst erhält. Dies entspricht der neuesten Spezifikation sowie dem Verhalten von Google Chrome (Firefox Bug 1375319).
-
Die WebVR API (1.1) ist jetzt auf macOS wieder aktiviert (Firefox Bug 1476091).
-
Window.screenLeft
undWindow.screenTop
wurden als Aliase fürWindow.screenX
undWindow.screenY
implementiert (Firefox Bug 1498860). -
Die Methode
XMLHttpRequest.getAllResponseHeaders()
gibt jetzt alle Header-Namen in Kleinbuchstaben zurück, entsprechend der Spezifikation (Firefox Bug 1398718). -
Das veraltete
HTMLAllCollection
Interface wurde gemäß den neuesten Spezifikationsupdates aktualisiert (Firefox Bug 1398354). -
Navigator.buildID
gibt nun aus Datenschutzgründen einen festen Zeitstempel zurück (Firefox Bug 583181). -
Die folgenden
Document.execCommand()
UI-Feature-Befehle wurden standardmäßig deaktiviert (Firefox Bug 1490641:enableObjectResizing
enableInlineTableEditing
enableAbsolutePositionEditor
Service Workers
- Die Methode
ServiceWorkerContainer.startMessages()
wurde implementiert (Firefox Bug 1263734).
Medien, Web Audio und WebRTC
- Die Eigenschaften
PannerNode.refDistance
,PannerNode.maxDistance
,PannerNode.rolloffFactor
, undPannerNode.coneOuterGain
werfen nun korrekt Ausnahmen, wenn sie auf Werte außerhalb ihrer akzeptierten Bereiche gesetzt werden (Firefox Bug 1487963). RTCRtpEncodingParameters
Einstellungen, die überRTCRtpSender.setParameters()
geändert wurden, aktualisierten sich bisher nicht, wenn die Änderungen während eines Anrufs vorgenommen wurden. Sie werden jetzt live aktualisiert, ohne Neuverhandlungen (Firefox Bug 1253499).RTCIceCandidateStats.relayProtocol
wurde implementiert — dies ist die standardisierte Version vonRTCIceCandidateStats.mozLocalTransport
, das nun veraltet ist (Firefox Bug 1435789).- Die automatische Verstärkungsregelung (AGC) ist jetzt standardmäßig aktiviert; dies kann mit der Einstellung
media.getusermedia.agc_enabled
geändert werden (Firefox Bug 1496714).
Entfernungen
- Die
Window.event
Eigenschaft, die in Firefox 63 hinzugefügt wurde, um Webkompatibilitätsprobleme zu lösen, wurde hinter einer Einstellung (dom.window.event.enabled
) versteckt und ist in den freigegebenen Versionen zunächst deaktiviert, aufgrund anderer entdeckter Probleme (Firefox Bug 1493869). Beachten Sie, dass dies tatsächlich spät im Firefox 63-Veröffentlichungszyklus durchgeführt wurde, aber wir erwähnen es hier sicherheitshalber. - Die
LocalMediaStream
Schnittstelle und ihrestop()
Methode wurden entfernt (Firefox Bug 1258143). Diese Methode ist mit der Außerbetriebnahme vonLocalMediaStream
nicht mehr verfügbar. Siehe den Abschnitt Stopping a video stream, um zu erfahren, wie Sie einen gesamten Stream stoppen können. - Die
AudioStreamTrack
undVideoStreamTrack
Schnittstellen wurden entfernt, da beide schon seit einiger Zeit veraltet sind (Firefox Bug 1377146). Ihre Funktionalität wurde inMediaStreamTrack
integriert; Spuren werden jetzt durch den Wert ihrerkind
Eigenschaft identifiziert, wieaudio
odervideo
.
Sicherheit
- Der Symantec CA Misstrauensplan wurde umgesetzt (siehe Firefox Bug 1409257; siehe auch die Diskussion Mozilla's Plan for Symantec Roots für weitere Details).
Referrer-Policy
kann nun verwendet werden, um Ressourcen zu steuern, die über Stylesheets abgerufen werden (Firefox Bug 1330487) — siehe Integration mit CSS für weitere Informationen.
Plugins
Keine Änderungen.
WebDriver Konformität (Marionette)
API-Änderungen
- Veraltete Befehlspunkte ohne das Präfix
Marionette:
,L10n:
oderAddon:
(einschließlichsingeTap
) wurden entfernt (Firefox Bug 1504478, Firefox Bug 1504940).
Fehlerbehebungen
- Synthesizierte
Shift
Tastendruckereignisse mitWebDriver:PerformActions
führten nicht zu Großbuchstaben (Firefox Bug 1405370). WebDriver:Navigate
konnte zu einem unendlichen Hängenbleiben führen, wenn der zugrunde liegende Inhaltsprozess des Tabs während der Navigation mehrmals geändert wurde (Firefox Bug 1504807).- Zur Verbesserung der Leistung und zur Reduzierung des Speicherbedarfs von Firefox wird die Standardseite für ein neues Tab oder Fenster nicht mehr
about:newtab
, sondernabout:blank
geladen (Firefox Bug 1506643). - Das Inhaltsblockierungseinführungspanel, das auf verschiedenen Webseiten angezeigt wurde und zu fehlerhaften Elementeinteraktionen führte, ist jetzt standardmäßig deaktiviert (Firefox Bug 1488826).
Änderungen für Add-on-Entwickler
API-Änderungen
Menüs
-
Eine neue API,
, kann aus demmenus.overrideContext()
contextmenu
DOM-Ereignis aufgerufen werden, um ein benutzerdefiniertes Kontextmenü auf Erweiterungsseiten festzulegen. Diese API ermöglicht es Erweiterungen, alle standardmäßigen Firefox-Menüpunkte auszublenden, um eine benutzerdefinierte Kontextmenü-UI bereitzustellen. Dieses Kontextmenü kann aus mehreren obersten Menüpunkten der Erweiterung bestehen und kann optional Tab- oder Lesezeichen-Kontextmenüpunkte anderer Erweiterungen enthalten. Weitere Details finden Sie in diesem Blogpost.
wurde implementiert in (Firefox Bug 1280347).menus.overrideContext()
- Die Option
showDefaults: false
, die zur Ausblendung der standardmäßigen Kontextmenüoptionen verwendet werden kann, wurde implementiert in (Firefox Bug 1367160). documentURLPatterns
kann jetzt verwendet werden, um einemoz-extension://
Dokument-URL zu matchen, selbst wenn
verwendet wird. Auf diese Weise kann es zuverlässig verwendet werden, um benutzerdefinierte Menüpunkte auf bestimmte Dokumente zu beschränken (Firefox Bug 1498896).menus.overrideContext()
-
Sie können jetzt Einschränkungen für das Auftreten von Kontextmenüs in einem Add-on mithilfe der neuen
viewTypes
Eigenschaft inmenus.create()
undmenus.update()
festlegen (Firefox Bug 1416839). -
menus.update()
kann jetzt verwendet werden, um das Icon eines vorhandenen Menüpunkts zu aktualisieren (Firefox Bug 1414566). -
Erweiterungen können jetzt erkennen, welche Maustaste verwendet wurde, als ein Menüpunkt angeklickt wurde — dies kann über die neue
button
Eigenschaft vonmenus.OnClickData
herausgefunden werden (Firefox Bug 1469148).
Fenster
- Die
windows.create()
Methode hat jetzt eine neue verfügbare Option —cookieStoreId
, die denCookieStoreId
angibt, der für alle Tabs, die beim Öffnen des Fensters erstellt werden, verwendet werden soll (Firefox Bug 1393570).
Datenschutz
- Die
privacy.websites
EigenschaftcookieConfig
ist ein Objekt, das einebehavior
Eigenschaft akzeptieren kann — diese Eigenschaft kann jetzt einen neuen Wert,reject_trackers
, annehmen, welcher die Erweiterung anweist, Tracking-Cookies abzulehnen (Firefox Bug 1493057).
devtools.panels API
- Die
devtools.panels.elements
MethodeSidebar.setPage()
wird jetzt unterstützt (Firefox Bug 1398734).
Manifest-Änderungen
- Die neue
pinned
Eigenschaft despage_action
Manifest-Schlüssels ermöglicht es Erweiterungen zu steuern, ob ihre Page Actions bei der Installation an die Adressleiste angeheftet werden sollen oder nicht (Firefox Bug 1494135). - In nativen Manifests auf Windows wird zunächst die 32-Bit-Registry-Ansicht (Wow6432Node) auf Registrierungsschlüssel überprüft, gefolgt von der "nativen" Registrierungsansicht; Sie sollten die für Ihre Anwendung geeignete verwenden (Firefox Bug 1494709).
- Das
chrome_settings_overrides
Feldsearch_provider
Objekt kann jetzt neue Eigenschaften beinhalten —suggest_url
undsuggest_url_post_params
(Firefox Bug 1486819), undsearch_url_post_params
.
Siehe auch
- Hacks-Veröffentlichungsbeitrag: Firefox 64 Released
Ältere Versionen
- Firefox 63 für Entwickler
- Firefox 62 für Entwickler
- Firefox 61 für Entwickler
- Firefox 60 für Entwickler
- Firefox 59 für Entwickler
- Firefox 58 für Entwickler
- Firefox 57 für Entwickler
- Firefox 56 für Entwickler
- Firefox 55 für Entwickler
- Firefox 54 für Entwickler
- Firefox 53 für Entwickler
- Firefox 52 für Entwickler
- Firefox 51 für Entwickler
- Firefox 50 für Entwickler
- Firefox 49 für Entwickler
- Firefox 48 für Entwickler
- Firefox 47 für Entwickler
- Firefox 46 für Entwickler
- Firefox 45 für Entwickler
- Firefox 44 für Entwickler
- Firefox 43 für Entwickler
- Firefox 42 für Entwickler
- Firefox 41 für Entwickler
- Firefox 40 für Entwickler
- Firefox 39 für Entwickler
- Firefox 38 für Entwickler
- Firefox 37 für Entwickler
- Firefox 36 für Entwickler
- Firefox 35 für Entwickler
- Firefox 34 für Entwickler
- Firefox 33 für Entwickler