Firefox 63 Versionshinweise für Entwickler
Dieser Artikel bietet Informationen über die Änderungen in Firefox 63, die sich auf Entwickler auswirken. Firefox 63 wurde am 23. Oktober 2018 veröffentlicht.
Änderungen für Webentwickler
>Entwickler-Tools
- Der Font-Tab im Seiten-Inspektor enthält jetzt einen Editor, der es einfach macht, die Einstellungen der Fonts auf Ihrer Seite anzuzeigen und zu bearbeiten. Siehe Edit fonts für Details.
- Der Zugänglichkeitsinspektor ist jetzt standardmäßig aktiviert (Firefox Bug 1482454).
- Wenn Sie mit der Maus über ein Objekt im Zugänglichkeitsinspektor fahren, wird das Element hervorgehoben und seine Rolle und sein Name werden in einer Informationsleiste auf der Seite angezeigt (Firefox Bug 1473030).
- Die Befehlszeile in der Webkonsole wird jetzt direkt nach der Konsolenausgabe angezeigt (Firefox Bug 1136299).
- Ein neues Symbol wurde zum Inhalt im Netzwerkmonitor hinzugefügt, um anzuzeigen, wann eine URL zu einem bekannten Tracker gehört — siehe security icons (Firefox Bug 1333994).
- Der Standardwert von
devtools.aboutdebugging.showSystemAddonsist jetztfalse, was bedeutet, dass System-Add-ons nicht auf derabout:debugging-Seite aufgelistet werden. Sie können die Einstellungen ändern, indem Sie zuabout:confignavigieren (Firefox Bug 1425347). - Die Symbolleiste des Modus für responsives Design wurde vereinfacht, und wir haben die Option hinzugefügt, das Ansichtsfenster linksbündig auszurichten.
- Der Seiteninspektor enthält einen Link zur Klassendefinition für ein benutzerdefiniertes Element (Firefox Bug 1443923).
HTML
- Unterstützung für das
<img>-Elementattributdecodingwurde hinzugefügt (Firefox Bug 1416328); siehe auchHTMLImageElement.decoding.
Entfernungen
- Unterstützung für den
sidebarLinktyp (rel="sidebar") wurde entfernt. Wenn ein Anker-Tag dieses Attribut enthält, wird es ignoriert (Firefox Bug 1452645).
CSS
- Unterstützung für die
:definedPseudo-Klasse wurde hinzugefügt (Firefox Bug 1331334). - Unterstützung für
row-gap,column-gapundgapwurden im Flexbox-Layout hinzugefügt (Firefox Bug 1398483). - Unterstützung für webkit-präfixierte Pixel-Dichte @media-Abfragen wurde wieder aktiviert (Firefox Bug 1444139).
- Unterstützung hinzugefügt für die CSS Flexible Box Layout (Flexbox) Eigenschaften
align-self,align-content, undalign-itemssowie diejustify-content-Eigenschaft (Firefox Bug 1472843). - Die
path()-Funktion füroffset-pathwurde implementiert (Firefox Bug 1429298). - Syntaxverbesserungen der Media Queries Level 4 Spezifikation wurden implementiert, insbesondere verschachtelte Boolesche Ausdrücke und die Bereichssyntax (Firefox Bug 1422225).
offset-*-Eigenschaften wurden ininset-block-start,inset-block-end,inset-inline-start, undinset-inline-endumbenannt (Firefox Bug 1464782).- Unterstützung für die prefers-reduced-motion Medienfunktion hinzugefügt (Firefox Bug 1365045, Firefox Bug 1475462).
- Fluss-relativ Werte (
block,inline) für dieresize-Eigenschaft hinzugefügt (Firefox Bug 1464786). - Flexbox-Layout für
safe&unsafeWerte inalign-self,align-content, undjustify-contentimplementiert (Firefox Bug 1297774). - Die Logischen Eigenschaften (wo angebracht) sind jetzt animierbar (Firefox Bug 1309752).
Entfernungen
offset-block-start,offset-block-end,offset-inline-start, undoffset-inline-endwurden entfernt; diese wurden ininset-*umbenannt, wie oben beschrieben (Firefox Bug 1464782).
SVG
Keine Änderungen.
JavaScript
- Das
Symbol.prototype.description-Eigenschaft wurde implementiert (Firefox Bug 1472170). - Die
Object.fromEntries()-Methode wurde hinzugefügt (Firefox Bug 1469019). - Wenn Sie versuchen, auf eine Eigenschaft eines undefinierten Objekts zuzugreifen, ist die Fehlermeldung jetzt erheblich verbessert. Betrachtet man den Fall, wo
xundefiniert ist und man versucht, aufx.yzuzugreifen, gibt die Konsole jetzt anstelle von "TypeError: x is undefined" die detailliertere Meldung x is undefined; can't access its "y" property zurück (Firefox Bug 1259822).
Entfernungen
- Experimentelle Unterstützung für die Serialisierung von WebAssembly-Modulen in IndexedDB wurde entfernt (Firefox Bug 1469395).
APIs
Neue APIs
- Die Shadow DOM (Firefox Bug 1471947) und Custom Elements (Firefox Bug 1471948) APIs wurden standardmäßig aktiviert; siehe Web components für mehr Details.
- Die Media Capabilities API wurde implementiert (Firefox Bug 1409664).
- Die Async Clipboard API wurde implementiert und standardmäßig für alle Kanäle aktiviert (Firefox Bug 1461465). Wie bei Chrome implementiert Firefox derzeit nur die Methoden
writeText()undreadText(); allerdings istreadText()im Gegensatz zu Chrome nur in Browsererweiterungen verfügbar. - Die
SecurityPolicyViolationEventSchnittstelle wird jetzt unterstützt. Sie ermöglicht das Senden von Ereignissen, wenn dieContent-Security-Policyverletzt wird (Firefox Bug 1472661).
DOM
-
Die folgenden Teile der Web Animations API wurden standardmäßig aktiviert (siehe Firefox Bug 1476158):
- Die
Animation-Eigenschaftenreadyundfinished, die diereadyundfinishedPromise-Objekte derAnimation-Objekte angeben. - Die
Animation-Eigenschafteffect. - Die Schnittstellen
KeyframeEffectundAnimationEffect.
- Die
-
Die
Element.toggleAttribute()-Methode wurde implementiert (Firefox Bug 1469592). -
Die historisch, zuvor nicht-standardisierte
Event.returnValueEigenschaft wird jetzt aus Kompatibilitätsgründen unterstützt (Firefox Bug 1452569). -
Wir haben die
Window.eventEigenschaft implementiert, um die Web-Kompatibilität zu verbessern, da sie jetzt Standard ~f geworden ist (Firefox Bug 218415). Aufgrund einiger Web-Kompatibilitätsprobleme (z.B. Firefox Bug 1479964) wurde dies jedoch schnell in Nicht-Nightly-Kanälen deaktiviert, versteckt hinter demdom.window.event.enabledPref (Firefox Bug 1493869). -
Um Firefox mit Edge und Chrome in Einklang zu bringen, gibt die
navigator.platformEigenschaft jetzt"Win32"zurück, selbst wenn es auf 64-Bit-Windows ausgeführt wird (Firefox Bug 1472618). -
Vor Firefox 63 führten Links, die neue Fenster öffneten und
rel="noopener"hatten, sowie Aufrufe vonWindow.open()mit dem aktiviertennoopenerFensterfeature standardmäßig dazu, dass alle Fensterfunktionen deaktiviert waren, sodass Sie alle gewünschten Standardfunktionen explizit neu aktivieren mussten. Diese Fenster haben jetzt die gleiche Menge an Funktionalitäten wie jedes andere Fenster, und Sie müssen explizit deaktivieren, was Sie nicht möchten (Firefox Bug 1419960).
DOM-Ereignisse
- Auf Windows wurde die Behandlung der
Alt-Taste auf der rechten Seite der Tastatur verbessert. Wenn das aktuelle Tastaturlayout des Nutzers dieAlt-Taste derAltGr-Modifikatortaste zuordnet, wird der Wert vonKeyboardEvent.keyjetzt als"AltGraph"gemeldet. Dieses Verhalten entspricht dem kürzlich in Chrome eingeführten Verhalten (Firefox Bug 900750).
Medien, Web Audio und WebRTC
- Mikrofonzugriff funktioniert jetzt gleichzeitig in mehreren Tabs, auch innerhalb desselben Inhaltsprozesses (Firefox Bug 1404977).
RTCDataChannelwurde aktualisiert, um das sctp-sdp-21-Datenformat für die Daten zu unterstützen, zusätzlich zum zuvor unterstützten älteren sctp-sdp-05-Format.- Der Knotentyp
ConstantSourceNodefür die Web Audio API hat jetzt eine Standardkanalanzahl von 2 statt 1, um der Spezifikation zu entsprechen (Firefox Bug 1413283). - Die Web Audio API-Schnittstelle
AudioScheduledSourceNode(und damit alle anderen darauf basierenden Knotentypen) wirft jetzt die richtige Ausnahme, wenn ein negativer Wert als Knotenstartzeit angegeben wird. Dieser Fehler ist einRangeError(Firefox Bug 1413284). - Die minimal und maximal zugelassenen Werte für das
AudioParamObjektvaluewurden auf den minimalen negativen Einzelpräzisions-Floating-Point-Wert (-340.282.346.638.528.859.811.704.183.484.516.925.440) und den maximal positiven Einzelpräzisions-Floating-Point-Wert (+340.282.346.638.528.859.811.704.183.484.516.925.440) geändert (Firefox Bug 1476695). - Die
SourceBuffer.changeType-Methode, die es ermöglicht, während eines aktiven Streams Codecs zu wechseln, wurde standardmäßig aktiviert. Dies ist Teil der Media Source Extensions API (Firefox Bug 1481166). - Die Methode
AudioParam.setValueCurveAtTime()wurde aktualisiert, um korrekt ein Array von Float-Werten zu akzeptieren, um die Werte des Parameters anzugeben, die mit der Zeit geändert werden sollen. Zuvor erforderte sie einFloat32Array(Firefox Bug 1421091). AudioParam.setValueCurveAtTime()wurde ebenfalls aktualisiert, um korrekt einen ordnungsgemäßenTypeErrorzurückzugeben, wenn in demvalues-Array ein nicht-endlicher Wert gefunden wird (Firefox Bug 1472095).- Darüber hinaus wurde
setValueCurveAtTime()aktualisiert, um sicherzustellen, dass, wenn der Parameter das Verfolgen der angegebenen Wertkurve nach dem Ablauf der Dauer beendet, der Wert des Parameters auf den letzten Wert in der Liste der zu kurvenden Werte gesetzt wird (Firefox Bug 1308436). - Das
RTCRTPStreamStats-Wörterbuch wurde inRTCRtpStreamStatsumbenannt, um sie mit anderen WebRTC-Wörterbüchern und der Spezifikation konsistent zu halten (Firefox Bug 1480498). - Unterstützung für die
RTCRtpStreamStatsWörterbuch-kind-Eigenschaft wurde hinzugefügt (Firefox Bug 1481851). - Die
RTCRtpStreamStats-Wörterbuch-isRemote-Eigenschaft ist veraltet und wird in Firefox 65 entfernt. Eine Warnung wird jetzt in der Konsole ausgegeben, wenn auf diese Eigenschaft zugegriffen wird. Siehe diesen Blogbeitrag auf dem Advancing WebRTC Blog für Details (Firefox Bug 1393306).
Canvas und WebGL
- Ein neues
powerPreference-Kontextattribut wurde zuHTMLCanvasElement.getContext()hinzugefügt. Auf macOS können damit nicht performancekritische WebGL-Anwendungen und Applets die schwach leistungsfähige GPU anstelle der leistungsstarken GPU in Mehr-GPU-Systemen anfordern (Firefox Bug 1349799).
Entfernungen
- Die veralteten und nicht-standardisierten Firefox-spezifischen Methoden
Window.back()undWindow.forward()wurden entfernt. Bitte verwenden Sie stattdessen die Methodenwindow.history.back()undwindow.history.forward()(Firefox Bug 1479486). - Die Methoden
URL.createObjectURL()undURL.revokeObjectURL()sind inServiceWorker-Instanzen nicht mehr verfügbar, da sie potenzielle Speicherlecks verursachten (Firefox Bug 1264182). - Da es in der Spezifikation ohnehin als veraltet galt, wurde die eingeschränkte Unterstützung für Doppler-Effekte auf
PannerNodeaus der Web Audio API entfernt. DieAudioListener-EigenschaftendopplerFactorundspeedOfSoundwurden entfernt, ebenso diePannerNode-MethodesetVelocity()(Firefox Bug 1148354).
CSSOM
Keine Änderungen.
HTTP
- Der
Clear-Site-Data-Header ist implementiert und nicht mehr hinter einer Einstellung verborgen (Firefox Bug 1470111).
Sicherheit
- Site-Favicons unterliegen jetzt Content Security Policy, wenn eine für die Site konfiguriert ist (Firefox Bug 1297156).
- Das
'report-sample'-Ausdrucksdirektiv der CSPscript-srcwird jetzt beim Generieren von Verstoßmeldungen erkannt. Dieses Direktive gibt an, dass ein kurzer Musterabschnitt, wo der Verstoß aufgetreten ist, in die Meldung aufgenommen werden soll. Zuvor hatte Firefox dieses Muster immer aufgenommen (Firefox Bug 1473218). - Firefox verwendet jetzt NSS 3.39 (Firefox Bug 1470914).
Plugins
Keine Änderungen.
WebDriver-Konformität (Marionette)
Neue Features
- Marionette gibt jetzt eine
setWindowRectFähigkeit in derWebDriver:NewSession-Antwort zurück, die wahr ist, wenn das Browserfenster verschoben und in der Größe geändert werden kann, was z.B. für Firefox, aber nicht für mobile Anwendungen der Fall ist (Firefox Bug 1470659). - Unterstützung für die
unhandledPromptBehavior-Fähigkeit hinzugefügt, die es ermöglicht, ein spezifisches Prompt-Verhalten der WebDriver-Spezifikation zu definieren (Firefox Bug 1264259). - Die Behandlung von Benutzereingabeaufforderungen wurde zu den Befehlen
WebDriver:ExecuteScriptundWebDriver:ExecuteAsyncScripthinzugefügt (Firefox Bug 1439995).
API-Änderungen
- Veraltete Befehlspunkte ohne das
WebDriver:-Präfix wurden entfernt (Firefox Bug 1451725). - Der
WebDriver:NewSession-Befehl gibt empfohlene Zeichenfolgen (linux,mac,windows) fürplatformNamezurück, wie in der WebDriver-Spezifikation definiert (Firefox Bug 1470646).
Fehlerbehebungen
- Fokusbezogene Ereignisse fehlten bei der Elementinteraktion, wenn Firefox nicht als oberste Anwendung ausgeführt wurde (Firefox Bug 1398111).
- Das Ausführen einer
pointerDown- undpointerUp-Aktion in einer nachfolgenden Aktionssequenz konnte einen Doppelklick auslösen, daWebDriver:ReleaseActionsden Doppelklick-Tracker nicht zurücksetzte (Firefox Bug 1422583). - Wiederholtes Ausführen von
pause-Aktionen konnte zu einem unendlichen Hängen führen (Firefox Bug 1447449). - Ein Fehler wurde behoben, bei dem das Zurückgeben einer Elementkollektion von
WebDriver:ExecuteScriptundWebDriver:ExecuteAsyncScripteinen zyklischen Referenzfehler verursachte (Firefox Bug 1447977). - Um ein Rennen zu verhindern, warten sowohl die
WebDriver:AcceptAlert- als auch dieWebDriver:DismissAlert-Befehle nun, bis die Benutzereingabeaufforderung geschlossen wurde (Firefox Bug 1479368). - Protokolleinträge, die vom Rahmenscript gesendet wurden, wurden nicht mehr durch
MarionettePrefs.logLevelbegrenzt, sondern alles wurde protokolliert (Firefox Bug 1482829). WebDriver:TakeScreenshotgab einen Fehler aus, wenn ein Screenshot eines Fensters größer als 32767 Pixel Breite oder Höhe aufgenommen wurde (Firefox Bug 1485730).WebDriver:SendAlertTextersetze den Standardwert der Benutzereingabeaufforderung nicht, wenn der zu sendende Text eine leere Zeichenfolge ist (Firefox Bug 1486485).
Andere
- Das Verhalten von
PerformanceObserver.observe()wurde korrigiert, um nichts zu tun, wenn keine gültigen Eintragstypen im angegebenen Array von zu beobachtenden Eintragstypen gefunden wurden oder wenn das Array leer ist oder fehlt. Zuvor warf Firefox fälschlicherweise einenTypeErroraus (Firefox Bug 1403027). - In OpenSearch akzeptiert Firefox jetzt
application/jsonals Such-URL-Typ, als Alias fürapplication/x-suggestions+json(Firefox Bug 1425827).
Änderungen für Add-on-Entwickler
>API-Änderungen
Theming
-
Die Standardtextfarbe für
browserActionBadges wird jetzt automatisch auf schwarz oder weiß gesetzt, um den Kontrast zum Hintergrund zu maximieren (Firefox Bug 1474110). -
Die
accentcolorundtextcolorEigenschaften desthemeManifest-Schlüssels sind jetzt optional (Firefox Bug 1413144). -
browserAction.getBadgeTextColor()undbrowserAction.setBadgeTextColor()ermöglichen es Ihnen, die Textfarbe von Browseraktions-Badges abzurufen und einzustellen (Firefox Bug 1424620). -
Der
theme colorsSchlüssel inmanifest.jsonunterstützt jetzt dientp_text-Eigenschaft zur Einstellung der Textfarbe in einem neuen Tab und dientp_background-Eigenschaft zur Einstellung der Farbe eines neuen Tabs (Firefox Bug 1347204). -
Themes können jetzt die Farben für Seitenleisten definieren, wie die Lesezeichen-Sidebar (Firefox Bug 1418602). Die relevanten Eigenschaften umfassen:
sidebar: Die Hintergrundfarbe für Seitenleisten.sidebar_text: Die Textfarbe für Seitenleisten.sidebar_highlight: Die Hintergrundfarbe eines ausgewählten Elements in einer Seitenleiste.sidebar_highlight_text: Die Textfarbe eines ausgewählten Elements in einer Seitenleiste.
-
Die Methode
management.install()ermöglicht es Web-Erweiterungen, signierte Browser-Themes zu installieren und zu aktivieren (Firefox Bug 1369209). -
Der Manifest-Schlüssel theme_experiment wurde eingeführt (Firefox Bug 1472740). Dieser Schlüssel ermöglicht die Definition von experimentellen
themeSchlüsseln für die Firefox-Oberfläche.
Suche
- Die neue
searchAPI ermöglicht es Ihnen, die Liste der installierten Suchmaschinen abzurufen und mit ihnen zu suchen (Firefox Bug 1352598). topSites.get()nimmt jetzt einenoptions-Parameter entgegen, der Ihnen ermöglicht, verschiedene Optionen für die Liste der zurückgegebenen Sites festzulegen (Firefox Bug 1445836).
Tabs
tabs.onHighlightedunterstützt jetzt Multi-Select (Firefox Bug 1474440).tabs.highlightenthält jetzt ein optionales Feld imhighlightInfo-Objekt —populate— das standardmäßig auftruegesetzt ist. Wenn es auffalsegesetzt ist, wird das zurückgegebenewindows.Window-Objekt nicht mit einer Liste von Tabs gefüllt, um die Leistung zu verbessern (Firefox Bug 1489814).tabs.updateunterstützt jetzt das Ändern des Auswahlstatus eines Tabs durch Einschließen vonhighlighted: trueimupdateProperties-Parameter (Firefox Bug 1479129).tabs.updateunterstützt jetzt das Ändern des Auswahlstatus eines Tabs, ohne den fokussierten Tab zu ändern (Firefox Bug 1486050) durch Einschließen von sowohlhighlighted: trueals auchactive: falseimupdateProperties-Parameter.tabs.querygibt jetzt ein Array vontabs.Tab-Objekten zurück, wenn mehrere Tabs ausgewählt sind (Firefox Bug 1465170).- Die
tabs.Tab-Eigenschaft spiegelt jetzt korrekt wider, welche Tabs in einem Browserfenster ausgewählt (hervorgehoben) sind, undtabs.highlightunterstützt das Ändern des hervorgehobenen Status mehrerer Tabs (Firefox Bug 1464862). - Die
isarticle-Eigenschaft imfilter-Objekt, das antabs.onUpdatedübergeben wird, wurde inisArticleumbenannt. Der alte Name bleibt erhalten, ist aber veraltet. Diese Änderung wurde auf Firefox 62 hochgezogen (Firefox Bug 1461695). - Das
tabs.onUpdated-Ereignis kann verwendet werden, um zu verfolgen, wenn ein Tab die Aufmerksamkeit des Nutzers mit derattention-Eigenschaft deschangeInfo-Objekts lenkt (Firefox Bug 1396684).
Menüs
menus.getTargetElement()wurde zurmenus-API hinzugefügt. Die Methode gibt das Element zurück, das durch dentargetElementId-Parameter referenziert wird, der das angeklickte Element identifiziert. Wenn dertargetElementIdnicht mehr gültig ist, gibt die Methode null zurück (Firefox Bug 1325814).menus.create()ermöglicht es Ihnen jetzt, unsichtbare Menüpunkte zu erstellen, undmenus.update()ermöglicht es Ihnen, die Sichtbarkeit von Menüpunkten umzuschalten (Firefox Bug 1482529).- Mit der
menus-API erstellte Einträge unterstützen jetzt Zugriffstasten (Firefox Bug 1320462). - Der
targetUrlPatterns-Parameter vonmenus.create()undmenus.update()unterstützt jetzt jedes URL-Schema, auch die, die normalerweise in einem Übereinstimmungsmuster nicht erlaubt sind (Firefox Bug 1280370). - Wenn ein Tabellenkontextmenüpunkt angeklickt wird, wird die "activeTab"-Berechtigung jetzt für diesen Tab gewährt, selbst wenn es nicht der aktuell aktive Tab ist (Firefox Bug 1446956).
Andere
commands.onCommandwird jetzt als Nutzereingabe behandelt (Firefox Bug 1408129).- Die
webRequest-API ermöglicht es Ihnen jetzt, für spekulative Verbindungen zu filtern (Firefox Bug 1479565). webRequest.SecurityInfofügt zwei neue Eigenschaften hinzu,keaGroupName, undsignatureSchemeName. Diese Änderung wurde auf Firefox 62 hochgezogen (Firefox Bug 1471959).cookies.Cookieenthält jetzt eine Eigenschaft, die den SameSite-Zustand des Cookies angibt. Diecookies.SameSiteStatus-Enumeration definiert den SameSite-Zustand (Firefox Bug 1351663).- Übereinstimmungsmuster für URLs stimmen jetzt explizit mit dem "data"-URL-Schema überein (Firefox Bug 1280370).