Firefox 65 für Entwickler
Dieser Artikel bietet Informationen über die Änderungen in Firefox 65, die sich auf Entwickler auswirken. Firefox 65 wurde am 29. Januar 2019 veröffentlicht.
Änderungen für Webentwickler
Entwicklertools
- Der Flexbox-Inspektor ist jetzt standardmäßig aktiviert.
- Unterstützung wurde zum JavaScript Debugger für XHR Breakpoints hinzugefügt (Firefox-Bug 821610).
- Klicken Sie mit der rechten Maustaste auf ein Element im Accessibility-Baum des Accessibility-Viewers, um es als JSON zu drucken im JSON-Viewer.
- Die Anzeige des Farbkontrasts des Accessibility-Pickers wurde aktualisiert, sodass bei einem komplexen Hintergrund (z. B. ein Verlauf oder ein komplexes Bild) eine Bandbreite von Farbkontrastwerten angezeigt wird.
- Der Header-Tab des Netzwerkmonitors zeigt jetzt die Referrer Policy für die ausgewählte Anfrage an (Firefox-Bug 1496742).
- Bei der Anzeige von Stack-Traces (z. B. in Konsolenlogs oder dem JavaScript-Debugger) werden Aufrufe von Framework-Methoden identifiziert und standardmäßig eingeklappt, um das Auffinden Ihres Codes zu erleichtern.
- Ähnlich wie bei nativen Terminals können Sie jetzt die Rückwärtssuche verwenden, um Einträge in Ihrem JavaScript-Konsolenverlauf zu finden (
F9
unter Windows/Linux oderCtrl
+R
auf macOS, dann einen Suchbegriff eingeben, gefolgt vonCtrl
+R
/Ctrl
+S
, um durch die Ergebnisse zu blättern). - Die
$0
-Verknüpfung der JavaScript-Konsole (verweist auf das aktuell untersuchte Element auf der Seite) verfügt jetzt über eine automatische Vervollständigung, sodass Sie zum Beispiel$0.te
eingeben können, um Vervollständigungsvorschläge für Eigenschaften wie$0.textContent
zu erhalten. - Die Änderungen, die Sie in der Regelansicht des Inspektors vornehmen, werden jetzt im Änderungsprotokoll angezeigt (Firefox-Bug 1503920).
HTML
- Ereignisse werden jetzt auf deaktivierten HTML-Elementen ausgelöst, d.h.
<button>
,<fieldset>
,<input>
,<select>
und<textarea>
-Elementen mit gesetztendisabled
-Attributen (Firefox-Bug 329509). - Das Entfernen des
src
-Attributs eines<iframe>
-Elements führt jetzt dazu, dassabout:blank
in das Element geladen wird, sodass es mit Chrome und Safari gleichgezogen wird (Firefox-Bug 1507842). Zuvor hatte das Entfernen vonsrc
keinen Effekt auf den Inhalt desiframe
. - Wir haben Unterstützung für das
referrerpolicy
-Attribut für<script>
-Elemente hinzugefügt (Firefox-Bug 1460920).
CSS
-
Der
crisp-edges
-Wert derimage-rendering
-Eigenschaft wurde jetzt unverändert (Firefox-Bug 1496617). -
Ein
scrollbar-color
-Wert vonauto
wird jetzt zuauto
aufgelöst, anstatt zwei Farben zu verwenden (Firefox-Bug 1501418). -
Die
break-*
-Eigenschaften wurden implementiert, und die veraltetenpage-break-*
-Eigenschaften wurden mit ihnen verknüpft (Firefox-Bug 775618):break-before
ist jetzt ein Alias fürpage-break-before
.break-after
ist jetzt ein Alias fürpage-break-after
.break-inside
ist jetzt ein Alias fürpage-break-inside
.
-
Der
anywhere
-Wert deroverflow-wrap
-Eigenschaft wurde implementiert (Firefox-Bug 1505786). -
Die neuen Schlüsselwörter für die Stufenpositionierung
jump-start
,jump-end
,jump-none
undjump-both
— verwendbar in dersteps()
Timing-Funktion — wurden implementiert (Firefox-Bug 1496619). Dies fällt auch mit der Entfernung derframes()
-Timing-Funktion zusammen, die die vorherige Methode zur Implementierung solcher Funktionen war und nun veraltet ist. -
Einige neue
-webkit-appearance
-Werte wurden hinzugefügt, um die Kompatibilität mit anderen Browsern zu gewährleisten. Insbesondere:meter
, das jetzt als Standardwert für<meter>
-Elemente in UA-Stylesheets verwendet wird. Der vorhandene Wertmeterbar
ist jetzt ein Alias fürmeter
(Firefox-Bug 1501483).progress-bar
, das jetzt als Standardwert für<progress>
-Elemente in UA-Stylesheets verwendet wird. Der vorhandene Wertprogressbar
ist jetzt ein Alias fürprogress-bar
(Firefox-Bug 1501506).textarea
, das jetzt als Standardwert für<textarea>
-Elemente in UA-Stylesheets verwendet wird. Der vorhandene Werttextfield-multiline
ist jetzt ein Alias fürtextarea
(Firefox-Bug 1507905).
-
Das Verhalten von
user-select
wurde geändert, um es mehr mit anderen Browsern in Einklang zu bringen (Firefox-Bug 1506547). Genauer gesagt:-
user-select: all
auf einem Element überschreibt nicht länger andereuser-select
-Werte, die auf den untergeordneten Elementen dieses Elements gesetzt sind. Zum Beispiel im folgenden Snippet:html<div style="-webkit-user-select: all"> All <div style="-webkit-user-select: none">None</div> </div>
Das
<div>
mitnone
darauf gesetzt, ist jetzt nicht mehr auswählbar. Zuvor hätte dieser Wert durch denall
-Wert des übergeordneten Elements überschrieben werden können. -
Nicht-
contenteditable
-Elemente, die incontenteditable
-Elementen eingebettet sind, können jetzt ausgewählt werden. -
user-select
verhält sich jetzt konsistent innerhalb und außerhalb von Shadow DOM. -
Der proprietäre
-moz-text
-Wert wurde entfernt.
-
-
CSS-Umgebungsvariablen (die
env()
Funktion) wurden implementiert (Firefox-Bug 1462233).
Entfernen
- Die
layout.css.shape-outside.enabled
-Eigenschaft wurde entfernt;shape-outside
,shape-margin
, undshape-image-threshold
können nicht mehr inabout:config
deaktiviert werden (Firefox-Bug 1504387). - Mehrere Firefox-exklusive Werte der
user-select
-Eigenschaft wurden entfernt —-moz-all
,-moz-text
,tri-state
,element
,elements
, undtoggle
. Siehe Firefox-Bug 1492958 und Firefox-Bug 1506547. - Wie oben erwähnt, wurde die
frames()
-Timing-Funktion entfernt (Firefox-Bug 1496619).
SVG
Keine Änderungen.
JavaScript
Intl.RelativeTimeFormat
wird nun unterstützt (Firefox-Bug 1504334).- Strings haben nun eine maximale Länge von
2**30 - 2
(~1GB) anstelle von2**28 - 1
(~256MB) (Firefox-Bug 1509542). - Die
globalThis
-Eigenschaft, die immer auf das oberste globale Objekt verweist, wurde implementiert (Firefox-Bug 1317422).
APIs
Neue APIs
- Readable Streams wurden standardmäßig aktiviert (Firefox-Bug 1505122).
- Die Storage Access API wurde standardmäßig aktiviert (Firefox-Bug 1513021).
DOM
Performance.toJSON()
wurde für Web Workers freigegeben (Firefox-Bug 1504958).XMLHttpRequest
-Anfragen werfen nun einenNetworkError
, wenn der angeforderte Inhaltstyp einBlob
ist und die Anfragemethode nichtGET
ist (Firefox-Bug 1502599).- Die
-moz-
-Präfixversionen vieler Fullscreen API-Funktionen wurden veraltet, und es werden jetzt Deprecation-Warnungen in der JavaScript-Konsole angezeigt, wenn sie auftreten (Firefox-Bug 1504946). Window.createImageBitmap()
undWorkerGlobalScope.createImageBitmap()
unterstützen jetzt SVG-Bilder (SVGImageElement
) als Bildquelle (Firefox-Bug 1500768).
DOM-Ereignisse
- Zukünftig ist nur noch ein Aufruf von
Window.open()
pro Ereignis erlaubt (Firefox-Bug 675574). - Die
keyup
- undkeydown
-Ereignisse werden jetzt während der IME-Zusammensetzung ausgelöst, um die Browser-Kompatibilität für CJKT-Benutzer zu verbessern (Firefox-Bug 354358).
Web Workers
- Das Event-Objekt von
SharedWorkerGlobalScope.connect
ist eine Instanz vonMessageEvent
— seinedata
-Eigenschaft ist jetzt ein leerer String anstelle vonnull
(Firefox-Bug 1508824).
Fetch und Service Workers
- Die Methode
Response.redirect()
löst jetzt korrekt einenTypeError
aus, wenn eine ungültige URL als erster Parameter angegeben wird (Firefox-Bug 1503276). - Die Methoden
ServiceWorkerContainer.register()
undWorkerGlobalScope.importScripts()
(wenn sie von einem Service Worker verwendet werden) akzeptieren jetzt alle Dateien mit einem gültigen JavaScript MIME-Typ (Firefox-Bug 1354577). - Die Eigenschaften
FetchEvent.replacesClientId
undFetchEvent.resultingClientId
werden jetzt unterstützt (Firefox-Bug 1264177). - Die Handler-Eigenschaften
ServiceWorkerGlobalScope.onmessageerror
undServiceWorkerContainer.onmessageerror
wurden implementiert (Firefox-Bug 1399446). - Der
Origin
-Header wird bei Fetch-Anfragen mit Methoden vonHEAD
oderGET
nicht mehr gesetzt (Firefox-Bug 1508661).
Medien, Web Audio und WebRTC
- Das WebRTC-Dictionary
RTCIceCandidateStats
wurde gemäß den neuesten Spezifikationsänderungen aktualisiert (Firefox-Bug 1324788, Firefox-Bug 1489040; RTCIceCandidateStats wurde auf die neueste Spezifikation aktualisiert, um genauer zu informieren, was sich geändert hat). - Die
pause
- undresume
-Ereignisse desMediaRecorder
(und ihre entsprechenden Ereignis-Handler-Eigenschaften), die bisher nicht implementiert waren, obwohl die Kompatibilitätstabellen behaupteten, dass sie es wären, wurden jetzt implementiert (Firefox-Bug 1458538, Firefox-Bug 1514016).
Canvas und WebGL
- Die WebGL
EXT_texture_compression_bptc
- undEXT_texture_compression_rgtc
-Texturkompressions-Erweiterungen wurden für WebGL1- und WebGL2-Kontexte freigegeben (Firefox-Bug 1507263).
Entfernen
- Mutations-Ereignisse wurden in Shadow Trees deaktiviert (Firefox-Bug 1489858).
- Die nicht standardmäßige
MediaStream
-EigenschaftcurrentTime
wurde entfernt (Firefox-Bug 1502927). - Die
dom.webcomponents.shadowdom.enabled
- unddom.webcomponents.customelements.enabled
-Präferenzen wurden entfernt — Shadow DOM und Custom Elements können nicht mehr inabout:config
deaktiviert werden (Firefox-Bug 1503019). - Das nicht standardmäßige DOM-
text
-Ereignis — das ausgelöst wurde, um die Editor-Benutzeroberfläche des Browsers über IME-Zusammensetzungs-String-Daten und den Auswahbereich zu informieren — wurde entfernt (Firefox-Bug 1288640). - Das
keypress
-Ereignis wird nicht mehr für nicht druckbare Tasten (Firefox-Bug 968056) ausgelöst, außer für dieEnter
-Taste sowie dieShift
+Enter
- undCtrl
+Enter
-Tastenkombinationen (diese wurden aus Kompatibilitätsgründen mit anderen Browsern beibehalten).
Sicherheit
- Zusätzliche CORS-Einschränkungen werden nun für zulässige Anforderungsheader durchgesetzt (Firefox-Bug 1483815, siehe auch whatwg fetch issue 382: CORS-safelisted request headers should be restricted according to RFC 7231 für mehr Details).
Netzwerke
Keine Änderungen.
Plugins
Keine Änderungen.
WebDriver-Konformität (Marionette)
API-Änderungen
WebDriver:ElementSendKeys
behandelt<input type=file>
jetzt weniger strikt bei Interaktionsprüfungen und erlaubt diesen Elementen, versteckt zu sein, ohne mehr einennicht interagierbar
-Fehler zu verursachen. Falls eine strikte Interaktionsprüfung gewünscht wird, kann die FähigkeitstrictFileInteractability
verwendet werden (Firefox-Bug 1502864).
Fehlerkorrekturen
- Die Fenster-Manipulationsbefehle
WebDriver:FullscreenWindow
,WebDriver:MinimizeWindow
,WebDriver:MaximizeWindow
undWebDriver:SetWindowRect
wurden stabiler gemacht (Firefox-Bug 1492499). Das bedeutet, dass sie unter speziellen Bedingungen nicht mehr zu einem unendlichen Hängen führen, sondern nach 5 Sekunden timeouten, wenn der angeforderte Fensterzustand nicht erreicht werden kann (Firefox-Bug 1521527). WebDriver:ElementClick
berechnet jetzt korrekt den Mittelpunkt des zu klickenden Elements, was Interaktionen mit Dimensionen von 1x1 Pixeln erlaubt (Firefox-Bug 1499360).
Sonstiges
- Für
unerwartet offene Alert
-Fehler werden informativere Nachrichten bereitgestellt (Firefox-Bug 1502268).
Sonstiges
-
Unterstützung für WebP-Bilder wurde hinzugefügt (Firefox-Bug 1294490).
- Zusätzlich wurde, um die Kompatibilität zwischen verschiedenen Browsern in bestimmten Situationen zu erleichtern, der WebP-MIME-Typ (
image/webp
) zum Standard-HTTP-Anfrage-Accept
-Header für HTML-Dateien hinzugefügt (Firefox-Bug 1507691).
- Zusätzlich wurde, um die Kompatibilität zwischen verschiedenen Browsern in bestimmten Situationen zu erleichtern, der WebP-MIME-Typ (
-
Der AV1-Codec wird jetzt standardmäßig unter Windows unterstützt (Firefox-Bug 1452146).
Änderungen für Add-on-Entwickler
API-Änderungen
Tabs
-
Die tabs API wurde erweitert, um Tab-Nachfolger zu unterstützen — ein Tab kann einen Nachfolger zugewiesen bekommen, der die ID des Tabs ist, der aktiv wird, sobald dieser geschlossen wird (Firefox-Bug 1500479, siehe auch diesen Blogbeitrag für mehr Informationen). Insbesondere:
- Der
tabs.Tab
-Typ hat jetzt einesuccessorId
-Eigenschaft, die verwendet werden kann, um die ID des Nachfolgers des Tabs zu speichern/abzurufen. - Der Callback der
tabs.onActivated
-Ereignislistener hat einen neuen verfügbaren Parameter,previousTabId
, der die ID des vorher aktivierten Tabs enthält, falls dieser noch geöffnet ist. - Das
updateProperties
-Objekt dertabs.update()
-Funktion hat eine neue optionale Eigenschaft,successorTabId
, die verwendet werden kann, um es zu aktualisieren. successorTabId
wird auch von Funktionen wietabs.get()
undtabs.query()
zurückgegeben.- Die neue Funktion
tabs.moveInSuccession()
ermöglicht die Massenbearbeitung von Tab-Nachfolgern.
- Der
Manifest-Änderungen
Keine Änderungen.
Sonstiges
- Die
headerURL
/theme_frame
-Eigenschaften für WebExtension-Themen werden jetzt auf Firefox für Android unterstützt (Firefox-Bug 1429488).
Siehe auch
- Hacks Release-Post: Firefox 65: WebP support, Flexbox Inspector, new tooling & platform updates
Ältere Versionen
- Firefox 64 für Entwickler
- 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