Firefox 65 für Entwickler
Dieser Artikel bietet Informationen über die Änderungen in Firefox 65, die Entwickler betreffen. Firefox 65 wurde am 29. Januar 2019 veröffentlicht.
Änderungen für Webentwickler
Entwicklerwerkzeuge
- Der Flexbox-Inspektor ist jetzt standardmäßig aktiviert.
- Unterstützung wurde dem JavaScript-Debugger für XHR-Unterbrechungspunkte hinzugefügt (Firefox Fehler 821610).
- Klicken Sie mit der rechten Maustaste auf ein Element im Accessibility-Baum des Accessibility-Viewers, um es als JSON auszugeben zum JSON-Viewer.
- Die Anzeige des Farbkontrasts des Accessibility Pickers wurde aktualisiert, sodass, wenn der Hintergrund eines Textes komplex ist (z. B. ein Farbverlauf oder ein komplexes Bild), ein Bereich von Farbkontrastwerten angezeigt wird.
- Die Registerkarte "Headers" des Netzwerkmonitors zeigt nun die Referrer Policy für die ausgewählte Anfrage an (Firefox Fehler 1496742).
- Bei der Anzeige von Stack-Traces (z. B. in Konsolen-Logs oder im JavaScript-Debugger) werden Aufrufe von Framework-Methoden standardmäßig identifiziert und eingeklappt, was es einfacher macht, sich auf den eigenen Code zu konzentrieren.
- In ähnlicher Weise wie native Terminals können Sie jetzt Rückwärtssuche verwenden, um Einträge in Ihrem JavaScript-Konsolenverlauf zu finden (
F9
auf Windows/Linux oderCtrl
+R
auf macOS, dann geben Sie einen Suchbegriff ein, gefolgt vonCtrl
+R
/Ctrl
+S
, um durch die Ergebnisse zu schalten). - Der
$0
-Shortcut der JavaScript-Konsole (bezieht sich auf das aktuell untersuchte Element auf der Seite) hat jetzt eine Autovervollständigung verfügbar. Zum Beispiel könnten Sie$0.te
eingeben, um Autovervollständigungsvorschläge für Eigenschaften wie$0.textContent
zu erhalten. - Die Änderungen, die Sie im Regel-View des Inspectors vornehmen, werden jetzt im Änderungsprotokoll aufgelistet (Firefox Fehler 1503920).
HTML
- Events werden jetzt auf deaktivierten HTML-Elementen ausgelöst, d. h.
<button>
,<fieldset>
,<input>
,<select>
und<textarea>
-Elemente mit gesetztendisabled
-Attributen (Firefox Fehler 329509). - Das Entfernen des
src
-Attributs eines<iframe>
-Elements führt nun dazu, dassabout:blank
darin geladen wird, wodurch es mit Chrome und Safari gleichzieht (Firefox Fehler 1507842). Zuvor hatte das Entfernen vonsrc
keine Auswirkung auf den Inhalt desiframe
. - Unterstützung für das
referrerpolicy
-Attribut auf<script>
-Elementen wurde hinzugefügt (Firefox Fehler 1460920).
CSS
-
Der
crisp-edges
-Wert derimage-rendering
-Eigenschaft wurde nun ungeprüft (Firefox Fehler 1496617). -
Ein
scrollbar-color
-Wert vonauto
löst sich jetzt inauto
auf, anstatt in zwei Farben (Firefox Fehler 1501418). -
Die
break-*
-Eigenschaften sind implementiert, und die veraltetenpage-break-*
-Eigenschaften sind jetzt Aliase von ihnen (Firefox Fehler 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 Fehler 1505786). -
Die neuen Schrittpositions-Keywords
jump-start
,jump-end
,jump-none
undjump-both
, die innerhalb dersteps()
-Timing-Funktion verwendet werden können, wurden implementiert (Firefox Fehler 1496619). Dies fällt auch mit der Entfernung derframes()
-Timing-Funktion zusammen, die bisher die vorherige Möglichkeit der Implementierung solcher Funktionalität darstellte und nun veraltet ist. -
Einige neue
-webkit-appearance
-Werte wurden hinzugefügt, um die Kompatibilität mit anderen Browsern zu verbessern. Insbesondere:meter
, das jetzt als Standardwert für<meter>
-Elemente in UA-Stylesheets verwendet wird. Der bestehende Wertmeterbar
ist jetzt ein Alias fürmeter
(Firefox Fehler 1501483).progress-bar
, das jetzt als Standardwert für<progress>
-Elemente in UA-Stylesheets verwendet wird. Der bestehende Wertprogressbar
ist jetzt ein Alias fürprogress-bar
(Firefox Fehler 1501506).textarea
, das jetzt als Standardwert für<textarea>
-Elemente in UA-Stylesheets verwendet wird. Der bestehende Werttextfield-multiline
ist jetzt ein Alias fürtextarea
(Firefox Fehler 1507905).
-
Das Verhalten von
user-select
wurde geändert, um es besser mit anderen Browsern in Einklang zu bringen (Firefox Fehler 1506547). Im Einzelnen:-
user-select: all
, das auf ein Element gesetzt ist, überschreibt keine anderenuser-select
-Werte mehr, die auf Kind-Elementen dieses Elements gesetzt sind. Zum Beispiel in dem folgenden Snippet:html<div style="-webkit-user-select: all"> All <div style="-webkit-user-select: none">None</div> </div>
Das
<div>
mitnone
darauf ist jetzt nicht mehr wählbar. Vorher wäre dieser Wert durch den auf dem Elternelement gesetztenall
-Wert überschrieben worden. -
Nicht-
contenteditable
-Elemente, die incontenteditable
-Elementen verschachtelt sind, sind jetzt auswählbar. -
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 Fehler 1462233).
Entfernungen
- Die
layout.css.shape-outside.enabled
-Präferenz wurde entfernt;shape-outside
,shape-margin
undshape-image-threshold
können nicht mehr inabout:config
deaktiviert werden (Firefox Fehler 1504387). - Mehrere Firefox-exklusive Werte der
user-select
-Eigenschaft wurden entfernt —-moz-all
,-moz-text
,tri-state
,element
,elements
undtoggle
. Siehe Firefox Fehler 1492958 und Firefox Fehler 1506547. - Wie oben erwähnt, wurde die
frames()
-Timing-Funktion entfernt (Firefox Fehler 1496619).
SVG
Keine Änderungen.
JavaScript
Intl.RelativeTimeFormat
wird jetzt unterstützt (Firefox Fehler 1504334).- Strings haben jetzt eine maximale Länge von
2**30 - 2
(~1GB) anstelle von2**28 - 1
(~256MB) (Firefox Fehler 1509542). - Die
globalThis
-Eigenschaft, die sich immer auf das globale Top-Level-Objekt bezieht, wurde implementiert (Firefox Fehler 1317422).
APIs
Neue APIs
- Readable Streams wurden standardmäßig aktiviert (Firefox Fehler 1505122).
- Die Storage Access API wurde standardmäßig aktiviert (Firefox Fehler 1513021).
DOM
Performance.toJSON()
wurde für Web Workers zugänglich gemacht (Firefox Fehler 1504958).XMLHttpRequest
Anfragen werfen jetzt einenNetworkError
, wenn der angeforderte Inhaltstyp einBlob
ist und die Anfragemethode nichtGET
ist (Firefox Fehler 1502599).- Die
-moz-
-Präfix-Versionen vieler der Fullscreen API-Funktionen wurden abgewertet, und es werden jetzt Veralterungswarnungen in der JavaScript-Konsole angezeigt, wenn sie verwendet werden (Firefox Fehler 1504946). Window.createImageBitmap()
undWorkerGlobalScope.createImageBitmap()
unterstützen nun SVG-Bilder (SVGImageElement
) als Bildquelle (Firefox Fehler 1500768).
DOM-Ereignisse
- Zukünftig ist nur ein
Window.open()
-Aufruf pro Ereignis erlaubt (Firefox Fehler 675574). - Die
keyup
undkeydown
Ereignisse werden jetzt während der IME-Komposition ausgelöst, um die plattformübergreifende Kompatibilität für CJKT-Benutzer zu verbessern (Firefox Fehler 354358.
Web Workers
- Das Event-Objekt von
SharedWorkerGlobalScope.connect
ist eine Instanz vonMessageEvent
— seinedata
-Eigenschaft ist jetzt ein leerer String-Wert anstelle vonnull
(Firefox Fehler 1508824).
Fetch und Service Workers
- Die Methode
Response.redirect()
wirft nun korrekt einenTypeError
, wenn eine ungültige URL als erster Parameter angegeben wird (Firefox Fehler 1503276). - Die Methoden
ServiceWorkerContainer.register()
undWorkerGlobalScope.importScripts()
(wenn sie von einem Service Worker verwendet werden) akzeptieren jetzt jede Datei mit einem gültigen JavaScript MIME-Typ (Firefox Fehler 1354577). - Die Eigenschaften
FetchEvent.replacesClientId
undFetchEvent.resultingClientId
werden jetzt unterstützt (Firefox Fehler 1264177). - Die Handler-Eigenschaften
ServiceWorkerGlobalScope.onmessageerror
undServiceWorkerContainer.onmessageerror
wurden implementiert (Firefox Fehler 1399446). - Der
Origin
-Header wird nicht mehr bei Fetch-Anfragen mit einer Methode vonHEAD
oderGET
gesetzt (Firefox Fehler 1508661).
Medien, Web Audio und WebRTC
- Das WebRTC
RTCIceCandidateStats
Dictionary wurde gemäß den neuesten Spezifikationsänderungen aktualisiert (Firefox Fehler 1324788, Firefox Fehler 1489040; RTCIceCandidateStats wurde auf die neueste Spezifikation aktualisiert, um mehr Details dazu zu erhalten, was genau geändert wurde). - Die
pause
undresume
Ereignisse desMediaRecorder
(und ihre entsprechenden Event-Handler-Eigenschaften wurden zuvor nicht implementiert, obwohl Kompatibilitätstabellen behaupteten, sie seien es. Jetzt wurden sie implementiert (Firefox Fehler 1458538, Firefox Fehler 1514016).
Canvas und WebGL
- Die WebGL
EXT_texture_compression_bptc
undEXT_texture_compression_rgtc
Texturkompressionserweiterungen wurden den WebGL1- und WebGL2-Kontexten zugänglich gemacht (Firefox Fehler 1507263).
Entfernungen
- Mutationsevents wurden in Schattenbäumen deaktiviert (Firefox Fehler 1489858).
- Die nicht standardisierte
MediaStream
-EigenschaftcurrentTime
wurde entfernt (Firefox Fehler 1502927). - Die
dom.webcomponents.shadowdom.enabled
unddom.webcomponents.customelements.enabled
Präferenzen wurden entfernt — Shadow DOM und Custom Elements können inabout:config
nicht mehr deaktiviert werden (Firefox Fehler 1503019). - Das nicht standardisierte DOM
text
-Ereignis — ausgelöst, um die Browser-Editor-UI über IME-Kompositionszeichenfolgendaten und Auswahlbereiche zu informieren — wurde entfernt (Firefox Fehler 1288640). - Das
keypress
-Ereignis wird nicht mehr für nicht druckbare Tasten ausgelöst (Firefox Fehler 968056), außer für dieEnter
-Taste und dieShift
+Enter
undCtrl
+Enter
Tastenkombinationen (diese wurden aus Gründen der plattformübergreifenden Kompatibilität beibehalten).
Sicherheit
- Zusätzliche CORS-Einschränkungen werden jetzt auf zulässige Anfrage-Header durchgesetzt (Firefox Fehler 1483815, siehe auch whatwg fetch issue 382: CORS-safelisted request headers should be restricted according to RFC 7231 für mehr Details).
Netzwerk
Keine Änderungen.
Plugins
Keine Änderungen.
WebDriver-Konformität (Marionette)
API-Änderungen
WebDriver:ElementSendKeys
handhabt<input type=file>
jetzt entspannter in Bezug auf Interaktivitätsprüfungen und erlaubt diesen Elementen, ohnenot interactable
Fehler verborgen zu sein. Wenn eine strikte Interaktivitätsprüfung gewünscht ist, kann die FähigkeitstrictFileInteractability
verwendet werden (Firefox Fehler 1502864).
Fehlerkorrekturen
- Die Fenster-Manipulationsbefehle
WebDriver:FullscreenWindow
,WebDriver:MinimizeWindow
,WebDriver:MaximizeWindow
undWebDriver:SetWindowRect
wurden stabiler gemacht (Firefox Fehler 1492499). Dies bedeutet, dass sie unter besonderen Bedingungen nicht mehr zu einer endlosen Hängung führen, sondern nach 5s zeitüberschreiten, wenn der angeforderte Fensterzustand nicht erreicht werden kann (Firefox Fehler 1521527). WebDriver:ElementClick
berechnet jetzt korrekt den Mittelpunkt des Elements, auf das geklickt werden soll, was Interaktionen mit Dimensionen von 1x1 Pixeln ermöglicht (Firefox Fehler 1499360).
Sonstiges
- Für
unexpected alert open
Fehler sind nun informativere Nachrichten verfügbar (Firefox Fehler 1502268).
Sonstige
-
Unterstützung für WebP-Bilder wurde hinzugefügt (Firefox Fehler 1294490).
- Zusätzlich wurde, um die plattformübergreifende Kompatibilität in bestimmten Situationen zu erleichtern, der WebP-MIME-Typ (
image/webp
) zum Standard-HTTP-Anfrage-Accept
-Header für HTML-Dateien hinzugefügt (Firefox Fehler 1507691).
- Zusätzlich wurde, um die plattformübergreifende Kompatibilität in bestimmten Situationen zu erleichtern, der WebP-MIME-Typ (
-
Der AV1-Codec wird jetzt standardmäßig unter Windows unterstützt (Firefox Fehler 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 er geschlossen wird (Firefox Fehler 1500479, siehe auch diesen Blogbeitrag für weitere Informationen). Insbesondere:
- Der
tabs.Tab
-Typ hat jetzt einesuccessorId
-Eigenschaft, die verwendet werden kann, um die ID des Tab-Nachfolgers zu speichern/abrufen. - Der Rückruf des
tabs.onActivated
-Ereignislisteners hat einen neuen Parameter verfügbar,previousTabId
, der die ID des zuvor aktivierten Tabs enthält, falls er noch geöffnet ist. - Das
updateProperties
-Objekt dertabs.update()
-Funktion hat eine neue optionale Eigenschaft verfügbar,successorTabId
, die aktualisiert werden kann. 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.
Sonstige
- Die
headerURL
/theme_frame
Eigenschaften für WebExtension-Themen werden jetzt auf Firefox für Android unterstützt (Firefox Fehler 1429488).
Siehe auch
Ältere Versionen
- Firefox 64 for developers
- Firefox 63 for developers
- Firefox 62 for developers
- Firefox 61 for developers
- Firefox 60 for developers
- Firefox 59 for developers
- Firefox 58 for developers
- Firefox 57 for developers
- Firefox 56 for developers
- Firefox 55 for developers
- Firefox 54 for developers
- Firefox 53 for developers
- Firefox 52 for developers
- Firefox 51 for developers
- Firefox 50 for developers
- Firefox 49 for developers
- Firefox 48 for developers
- Firefox 47 for developers
- Firefox 46 for developers
- Firefox 45 for developers
- Firefox 44 for developers
- Firefox 43 for developers
- Firefox 42 for developers
- Firefox 41 for developers
- Firefox 40 for developers
- Firefox 39 for developers
- Firefox 38 for developers
- Firefox 37 for developers
- Firefox 36 for developers
- Firefox 35 for developers
- Firefox 34 for developers