Firefox 65 Versionshinweise für Entwickler
Dieser Artikel bietet Informationen zu den Änderungen in Firefox 65, die Entwickler betreffen. Firefox 65 wurde am 29. Januar 2019 veröffentlicht.
Änderungen für Webentwickler
>Entwicklertools
- Der Flexbox-Inspektor ist jetzt standardmäßig aktiviert.
- Im JavaScript-Debugger wurde Unterstützung für XHR-Breakpoints hinzugefügt (Firefox-Bug 821610).
- Klicken Sie mit der rechten Maustaste auf ein Element im Barrierefreiheitsbaum des Barrierefreiheits-Betrachters, um es im JSON-Format auszugeben an den JSON-Viewer.
- Die Anzeige des Farbkontrasts im Barrierefreiheits-Picker wurde aktualisiert, sodass bei einem komplexen Hintergrund (z. B. ein Farbverlauf oder ein komplexes Bild) ein Bereich von Farbkontrastwerten angezeigt wird.
- Der Header-Tab im Netzwerkmonitor zeigt nun die Referrer-Policy für die ausgewählte Anfrage an (Firefox-Bug 1496742).
- Bei der Anzeige von Stack-Traces (z. B. in Konsolenprotokollen oder dem JavaScript-Debugger) werden Aufrufe von Framework-Methoden standardmäßig identifiziert und eingeklappt, um es einfacher zu machen, seinen eigenen Code zu finden.
- Ähnlich wie in nativen Terminals können Sie jetzt die Rückwärtssuche verwenden, um Einträge in Ihrem JavaScript-Konsolenverlauf zu finden (
F9unter Windows/Linux oderCtrl+Rauf macOS, dann tippen Sie einen Suchbegriff ein, gefolgt vonCtrl+R/Ctrl+S, um durch die Ergebnisse zu schalten). - Das
$0-Kurzzeichen der JavaScript-Konsole (verweist auf das derzeit untersuchte Element auf der Seite) hat nun die Autovervollständigung verfügbar, sodass Sie beispielsweise$0.teeingeben können, um Autovervollständigungsvorschläge für Eigenschaften wie$0.textContentzu erhalten. - Die Bearbeitungen, die Sie in der Regel-Ansicht des Inspektors vornehmen, werden jetzt im Änderungen-Panel aufgelistet (Firefox-Bug 1503920).
HTML
- Ereignisse werden nun 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 nun dazu, dassabout:blankgeladen wird, wodurch eine Gleichwertigkeit mit Chrome und Safari hergestellt wird (Firefox-Bug 1507842). Vorher hatte das Entfernen vonsrckeinen Einfluss auf deniframe-Inhalt. - 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 ist jetzt unpräfixiert (Firefox-Bug 1496617). -
Ein
scrollbar-color-Wert vonautowird jetzt zuautoaufgelöst, anstatt zwei Farben (Firefox-Bug 1501418). -
Die
break-*-Eigenschaften wurden implementiert, und die veraltetenpage-break-*-Eigenschaften wurden ihnen zugewiesen (Firefox-Bug 775618):break-beforeist jetzt ein Alias fürpage-break-before.break-afterist jetzt ein Alias fürpage-break-after.break-insideist jetzt ein Alias fürpage-break-inside.
-
Der
anywhere-Wert deroverflow-wrap-Eigenschaft wurde implementiert (Firefox-Bug 1505786). -
Die neuen Schrittpositions-Keywords
jump-start,jump-end,jump-noneundjump-both— verwendbar innerhalb dersteps()Timing-Funktion — wurden implementiert (Firefox-Bug 1496619). Dies fällt auch mit der Entfernung derframes()-Timing-Funktion zusammen, die der vorherige Weg war, diese Funktionalität zu implementieren, jetzt veraltet. -
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 bestehende Wertmeterbarist jetzt ein Alias fürmeter(Firefox-Bug 1501483).progress-bar, das jetzt als Standardwert für<progress>-Elemente in UA-Stylesheets verwendet wird. Der bestehende Wertprogressbarist jetzt ein Alias fürprogress-bar(Firefox-Bug 1501506).textarea, das jetzt als Standardwert für<textarea>-Elemente in UA-Stylesheets verwendet wird. Der bestehende Werttextfield-multilineist jetzt ein Alias fürtextarea(Firefox-Bug 1507905).
-
Das Verhalten von
user-selectwurde geändert, um es mehr an andere Browser anzupassen (Firefox-Bug 1506547). Genauer gesagt:-
user-select: allauf einem Element überschreibt nicht mehr andereuser-select-Werte, die auf Kinder 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>mitnonedarauf ist jetzt nicht auswählbar. Früher wäre dieser Wert durch den auf das übergeordnete Element gesetztenall-Wert überschrieben worden. -
Nicht-
contenteditable-Elemente, die innerhalb voncontenteditable-Elementen verschachtelt sind, sind jetzt auswählbar. -
user-selectverhä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).
Entfernungen
- Die Einstellung
layout.css.shape-outside.enabledwurde entfernt;shape-outside,shape-margin, undshape-image-thresholdkönnen inabout:confignicht mehr deaktiviert werden (Firefox-Bug 1504387). - Mehrere nur in Firefox vorhandene 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.RelativeTimeFormatwird jetzt unterstützt (Firefox-Bug 1504334).- Strings haben jetzt eine maximale length von
2**30 - 2(~1GB) anstatt2**28 - 1(~256MB) (Firefox-Bug 1509542). - Die
globalThis-Eigenschaft, die immer auf das globale Top-Level-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 auf Web Workers zugänglich gemacht (Firefox-Bug 1504958).XMLHttpRequest-Anfragen werfen jetzt einenNetworkError, wenn der angeforderte Inhaltstyp einBlobist und die Anfragemethode nichtGETist (Firefox-Bug 1502599).- Die
-moz--präfixierten Versionen vieler der Fullscreen-API-Funktionen wurden veraltet und zeigen jetzt Deprecation-Warnungen in der JavaScript-Konsole an, wenn sie aufgerufen werden (Firefox-Bug 1504946). Window.createImageBitmap()undWorkerGlobalScope.createImageBitmap()unterstützen jetzt SVG-Bilder (SVGImageElement) als Bildquelle (Firefox-Bug 1500768).
DOM-Ereignisse
- Künftig ist nur noch ein
Window.open()-Aufruf pro Ereignis erlaubt (Firefox-Bug 675574). - Die
keyupundkeydown-Ereignisse werden jetzt während der IME-Zusammensetzung ausgelöst, um die Browser-Kompatibilität für CJKT-Nutzer zu verbessern (Firefox-Bug 354358.
Web Workers
- Das Event-Objekt von
SharedWorkerGlobalScope.connectist eine Instanz vonMessageEvent— seinedata-Eigenschaft ist jetzt ein leerer String-Wert anstelle vonnull(Firefox-Bug 1508824).
Fetch und Service Worker
- Die
Response.redirect()-Methode wirft jetzt korrekt einenTypeError, wenn eine ungültige URL als erster Parameter angegeben wird (Firefox-Bug 1503276). - Die Methoden
ServiceWorkerContainer.register()undWorkerGlobalScope.importScripts()(wenn von einem Service Worker verwendet) akzeptieren jetzt alle Dateien mit einem gültigen JavaScript-MIME-Typ (Firefox-Bug 1354577). - Die Eigenschaften
FetchEvent.replacesClientIdundFetchEvent.resultingClientIdwerden jetzt unterstützt (Firefox-Bug 1264177). - Die Handler-Eigenschaften
ServiceWorkerGlobalScope.onmessageerrorundServiceWorkerContainer.onmessageerrorwurden implementiert (Firefox-Bug 1399446). - Der
Origin-Header wird nicht mehr bei Fetch-Anfragen mit einer Methode vonHEADoderGETgesetzt (Firefox-Bug 1508661).
Medien, Web Audio und WebRTC
- Der WebRTC-
RTCIceCandidateStats-Dictionary wurde entsprechend den neuesten Spezifikationsänderungen aktualisiert (Firefox-Bug 1324788, Firefox-Bug 1489040; RTCIceCandidateStats wurde auf den neuesten Stand der Spezifikation gebracht, um detailliertere Informationen darüber zu erhalten, was genau geändert wurde). - Die
pause- undresume-Ereignisse desMediaRecorder(und die entsprechenden Event-Handler-Eigenschaften) waren zuvor nicht implementiert, obwohl die Kompatibilitätstabellen behaupteten, sie seien es gewesen. Sie wurden jetzt implementiert (Firefox-Bug 1458538, Firefox-Bug 1514016).
Canvas und WebGL
- Die WebGL-
EXT_texture_compression_bptcundEXT_texture_compression_rgtc-Texturkompressionserweiterungen wurden für WebGL1- und WebGL2-Kontexte zugänglich gemacht (Firefox-Bug 1507263).
Entfernungen
- Mutation Events wurden in Schattenbäumen deaktiviert (Firefox-Bug 1489858).
- Die nicht standardmäßige
MediaStream-EigenschaftcurrentTimewurde entfernt (Firefox-Bug 1502927). - Die Einstellungen
dom.webcomponents.shadowdom.enabledunddom.webcomponents.customelements.enabledwurden entfernt — Schatten-DOM und benutzerdefinierte Elemente können inabout:confignicht mehr deaktiviert werden (Firefox-Bug 1503019). - Das nicht standardmäßige DOM-
text-Ereignis — ausgelöst, um die Browser-Editor-Oberfläche über IME-Zusammensetzungs-Stringdaten und den Auswahlbereich zu informieren — wurde entfernt (Firefox-Bug 1288640). - Das
keypress-Ereignis wird für nicht druckbare Tasten (Firefox-Bug 968056) nicht mehr ausgelöst, außer für dieEingabetasteund die TastenkombinationenShift+EingabetastesowieCtrl+Eingabetaste(diese wurden aus Gründen der plattformübergreifenden Kompatibilität beibehalten).
Sicherheit
- Zusätzliche CORS-Einschränkungen werden jetzt für zulässige Anfrage-Header durchgesetzt (Firefox-Bug 1483815, siehe auch whatwg fetch issue 382: CORS-safelisted request headers should be restricted according to RFC 7231 für weitere Details).
Netzwerk
Keine Änderungen.
Plugins
Keine Änderungen.
WebDriver-Übereinstimmung (Marionette)
API-Änderungen
WebDriver:ElementSendKeysbehandelt<input type=file>entspannter bezüglich der Interaktivitätsprüfungen und erlaubt es diesen Elementen, verborgen zu sein, ohne mehr einennot interactable-Fehler zu verursachen. Wenn eine strikte Interaktivitätsprüfung gewünscht ist, kann die FähigkeitstrictFileInteractabilityverwendet werden (Firefox-Bug 1502864).
Bugfixes
- Die Fenster-Manipulationsbefehle
WebDriver:FullscreenWindow,WebDriver:MinimizeWindow,WebDriver:MaximizeWindowundWebDriver:SetWindowRectwurden stabiler gemacht (Firefox-Bug 1492499). Dies bedeutet, dass sie unter besonderen Bedingungen nicht mehr zu einem endlosen Hängen führen, sondern stattdessen nach 5 Sekunden auslaufen, wenn der angeforderte Fensterzustand nicht erreicht werden kann (Firefox-Bug 1521527). WebDriver:ElementClickberechnet jetzt korrekt den Mittelpunkt des Elements, auf das geklickt werden soll, was Interaktionen mit Dimensionen von 1x1 Pixel ermöglicht (Firefox-Bug 1499360).
Sonstiges
- Für
unexpected alert open-Fehler werden informativere Meldungen bereitgestellt (Firefox-Bug 1502268).
Sonstiges
-
Unterstützung für WebP-Bilder wurde hinzugefügt (Firefox-Bug 1294490).
- Zusätzlich wurde der WebP-MIME-Typ (
image/webp) in der Standard-HTTP-Anfrage-Accept-Header für HTML-Dateien hinzugefügt, um die plattformübergreifende Kompatibilität in bestimmten Situationen zu erleichtern (Firefox-Bug 1507691).
- Zusätzlich wurde 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 um Tab-Nachfolger erweitert — ein Tab kann einen Nachfolger zugewiesen bekommen, der die ID des Tabs ist, der aktiv wird, sobald er geschlossen wird (Firefox-Bug 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 oder abzurufen. - Der Rückruf des Ereignis-Listeners
tabs.onActivatedhat einen neuen verfügbaren Parameter,previousTabId, der die ID des zuvor aktivierten Tabs enthält, wenn er noch geöffnet ist. - Das
updateProperties-Objekt der Funktiontabs.update()hat eine neue optionale EigenschaftsuccessorTabId, die verwendet werden kann, um es zu aktualisieren. successorTabIdwird auch von Funktionen wietabs.get()undtabs.query()zurückgegeben.- Die neue Funktion
tabs.moveInSuccession()ermöglicht die Manipulation von Tab-Nachfolgern in Massen.
- Der
Manifest-Änderungen
Keine Änderungen.
Sonstiges
- Die Eigenschaften
headerURL/theme_framefü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