Firefox 65 Veröffentlichungshinweise für Entwickler
Dieser Artikel liefert Informationen über die Änderungen in Firefox 65, die Entwickler betreffen werden. 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 im JavaScript-Debugger für XHR-Breakpoints hinzugefügt (Firefox-Bug 821610).
- Klicken Sie mit der rechten Maustaste auf ein Element im Zugänglichkeitsbaum des Accessibility-Viewers, um es als JSON zu drucken und im JSON-Viewer anzuzeigen.
- Die Anzeige des Farbkontrasts des Accessibility-Pickers wurde aktualisiert: Wenn der Hintergrund eines Textes komplex ist (z.B. ein Farbverlauf oder ein komplexes Bild), wird eine Spanne von Farbkontrastwerten angezeigt.
- Der Headers-Tab des Netzwerkmonitors zeigt jetzt die Referrer-Policy für die ausgewählte Anfrage an (Firefox-Bug 1496742).
- Beim Anzeigen von Stack-Traces (z.B. in Konsolenprotokollen oder dem JavaScript-Debugger) werden Aufrufe von Framework-Methoden standardmäßig identifiziert und zusammengeklappt, was das Auffinden Ihres Codes erleichtert.
- Ähnlich wie in nativen Terminals können Sie nun die Rückwärtssuche verwenden, um Einträge in Ihrem JavaScript-Konsolenverlauf zu finden (
F9unter Windows/Linux oderCtrl+Rauf macOS, dann ein Suchbegriff eingeben, gefolgt vonCtrl+R/Ctrl+S, um zwischen den Ergebnissen zu wechseln). - Die
$0-Verknüpfung der JavaScript-Konsole (referenziert das aktuell untersuchte Element auf der Seite) bietet jetzt Autovervollständigung an, so dass Sie zum Beispiel$0.teeingeben können, um Autovervollständigungsvorschläge für Eigenschaften wie$0.textContentzu erhalten. - Die Änderungen, die Sie in der Regelansicht des Inspektors vornehmen, werden nun im Änderungsfenster aufgelistet (Firefox-Bug 1503920).
HTML
- Ereignisse werden nun auf deaktivierten HTML-Elementen ausgelöst, d.h.
<button>,<fieldset>,<input>,<select>und<textarea>-Elementen, die das Attributdisabledgesetzt haben (Firefox-Bug 329509). - Das Entfernen des
src-Attributs eines<iframe>-Elements führt jetzt dazu, dassabout:blankin das<iframe>geladen wird, was nun mit Chrome und Safari übereinstimmt (Firefox-Bug 1507842). Zuvor hatte das Entfernen vonsrckeinen Effekt auf den<iframe>-Inhalt. - Wir haben Unterstützung für das
referrerpolicy-Attribut auf<script>-Elementen hinzugefügt (Firefox-Bug 1460920).
CSS
-
Der Wert
crisp-edgesderimage-rendering-Eigenschaft ist nun unverändert (Firefox-Bug 1496617). -
Ein
scrollbar-color-Wert vonautowird jetzt zuautostatt zu zwei Farben aufgelöst (Firefox-Bug 1501418). -
Die
break-*-Eigenschaften wurden implementiert, und die veraltetenpage-break-*-Eigenschaften wurden auf sie umgelegt (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 Stufenpositions-Schlüsselwörter
jump-start,jump-end,jump-noneundjump-both— die innerhalb dersteps()-Timing-Funktion verwendbar sind — wurden implementiert (Firefox-Bug 1496619). Das fällt auch mit der Entfernung derframes()-Timing-Funktion zusammen, die zuvor die Art der Implementierung solcher Funktionalitäten darstellte und nun veraltet ist. -
Einige neue
-webkit-appearance-Werte wurden hinzugefügt, für die Kompatibilität mit anderen Browsern. Insbesondere:meter, welches jetzt als Standardwert für<meter>-Elemente in UA-Stylesheets verwendet wird. Der vorhandene Wertmeterbarist jetzt ein Alias fürmeter(Firefox-Bug 1501483).progress-bar, welches jetzt als Standardwert für<progress>-Elemente in UA-Stylesheets verwendet wird. Der vorhandene Wertprogressbarist jetzt ein Alias fürprogress-bar(Firefox-Bug 1501506).textarea, welches jetzt als Standardwert für<textarea>-Elemente in UA-Stylesheets verwendet wird. Der vorhandene Werttextfield-multilineist jetzt ein Alias fürtextarea(Firefox-Bug 1507905).
-
Das Verhalten von
user-selectwurde geändert, um besser mit anderen Browsern übereinzustimmen (Firefox-Bug 1506547). Genauer:-
user-select: all, das auf ein Element gesetzt wird, überschreibt nicht mehr andereuser-select-Werte, die auf untergeordnete Elemente dieses Elements gesetzt sind. Beispielweise im folgenden Snippet:html<div style="-webkit-user-select: all"> All <div style="-webkit-user-select: none">None</div> </div>Der
<div>mitnonegesetzt auf diesen ist jetzt nicht wählbar. Zuvor wäre dieser Wert von demall-Wert überschrieben worden, der auf das übergeordnete Element gesetzt ist. -
Nicht-
contenteditable-Elemente, die incontenteditable-Elemente eingebettet sind, sind jetzt auswählbar. -
user-selectverhält sich jetzt konsistent innerhalb und außerhalb des Shadow DOM. -
Der proprietäre
-moz-text-Wert wurde entfernt.
-
-
CSS-Umgebungsvariablen (die
env()-Funktion) wurden implementiert (Firefox-Bug 1462233).
Entfernungen
- Die
layout.css.shape-outside.enabled-Voreinstellung wurde entfernt;shape-outside,shape-margin, undshape-image-thresholdkönnen nicht mehr inabout:configdeaktiviert 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 bereits erwähnt, wurde die
frames()-Timing-Funktion entfernt (Firefox-Bug 1496619).
SVG
Keine Änderungen.
JavaScript
Intl.RelativeTimeFormatwird jetzt unterstützt (Firefox-Bug 1504334).- Zeichenfolgen haben jetzt eine maximale length 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 sind jetzt standardmäßig aktiviert (Firefox-Bug 1505122).
- Die Storage Access API ist jetzt standardmäßig aktiviert (Firefox-Bug 1513021).
DOM
Performance.toJSON()wurde für Web Workers freigegeben (Firefox-Bug 1504958).XMLHttpRequestAnfragen werfen jetzt einenNetworkError, wenn der angeforderte Inhalts-Typ einBlobist und die Anfragemethode nichtGETist (Firefox-Bug 1502599).- Die
-moz--präfixierten Versionen vieler der Fullscreen API-Funktionen wurden veraltet und es werden nun 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
- Künftig ist nur noch ein einziger Aufruf von
Window.open()pro Ereignis erlaubt (Firefox-Bug 675574). - Die
keyupundkeydownEreignisse werden jetzt während der IME-Zusammensetzung ausgelöst, um die plattformübergreifende Kompatibilität für CJKT-Benutzer zu verbessern (Firefox-Bug 354358).
Web-Worker
- Das Ereignisobjekt von
SharedWorkerGlobalScope.connectist eine Instanz vonMessageEvent— seinedataEigenschaft hat jetzt einen leeren Zeichenfolgenwert anstelle vonnull(Firefox-Bug 1508824).
Fetch und Service-Worker
- Die Methode
Response.redirect()wirft jetzt korrekt einenTypeError, 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.replacesClientIdundFetchEvent.resultingClientIdwerden jetzt unterstützt (Firefox-Bug 1264177). - Die 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
- Das WebRTC
RTCIceCandidateStatsWörterbuch wurde gemäß den neuesten Spezifikationsänderungen aktualisiert (Firefox-Bug 1324788, Firefox-Bug 1489040; RTCIceCandidateStats wurde auf die neueste Spezifikation aktualisiert, um genau darzustellen, was geändert wurde). - Die
pause- undresume-Ereignisse (und ihre entsprechenden Ereignishandlereigenschaften) desMediaRecorderwurden zuvor nicht implementiert, obwohl die Kompatibilitätstabellen behaupteten, dass sie implementiert seien. Sie wurden nun implementiert (Firefox-Bug 1458538, Firefox-Bug 1514016).
Canvas und WebGL
- Die WebGL
EXT_texture_compression_bptcundEXT_texture_compression_rgtcTexturkompressions-Erweiterungen wurden WebGL1- und WebGL2-Kontexten freigegeben (Firefox-Bug 1507263).
Entfernungen
- Mutationsereignisse wurden in Shadow Trees deaktiviert (Firefox-Bug 1489858).
- Die nicht standardmäßige
MediaStreamEigenschaftcurrentTimewurde entfernt (Firefox-Bug 1502927). - Die Voreinstellungen
dom.webcomponents.shadowdom.enabledunddom.webcomponents.customelements.enabledwurden entfernt — Shadow DOM und Custom Elements können nicht mehr inabout:configdeaktiviert werden (Firefox-Bug 1503019). - Das nicht standardmäßige DOM
text-Ereignis — welches ausgelöst wurde, um die Browser-Editor-Benutzeroberfläche über IME-Zusammenstellungszeichendaten und Auswahlbereich zu informieren — wurde entfernt (Firefox-Bug 1288640). - Das
keypress-Ereignis wird nicht mehr für non-printable keys ausgelöst (Firefox-Bug 968056), mit Ausnahme derEnter-Taste und der Tasten-KombinationenShift+EnterundCtrl+Enter(diese wurden für plattformübergreifende Kompatibilität beibehalten).
Sicherheit
- Zusätzliche CORS-Einschränkungen werden jetzt auf 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-Konformität (Marionette)
API-Änderungen
WebDriver:ElementSendKeysgeht jetzt bei<input type=file>entspannter mit der Umgangbarkeit der Elemente um und erlaubt, dass diese Elemente verborgen sind, ohne dass einnot interactable-Fehler mehr ausgelöst wird. Wenn eine strenge Prüfungszielinteraktion gewünscht ist, kann die FähigkeitstrictFileInteractabilityverwendet werden (Firefox-Bug 1502864).
Fehlerbehebungen
- Die Fensterbearbeitungsbefehle
WebDriver:FullscreenWindow,WebDriver:MinimizeWindow,WebDriver:MaximizeWindow, undWebDriver:SetWindowRectwurden stabiler gemacht (Firefox-Bug 1492499). Das bedeutet, dass sie unter besonderen Bedingungen nicht mehr zu einem unendlichen Hängen führen, sondern nach 5 Sekunden auslaufen, wenn der angeforderte Fensterstatus nicht erreicht werden kann (Firefox-Bug 1521527). WebDriver:ElementClickberechnet jetzt korrekt den Mittelpunkt des zu klickenden Elements, was Interaktionen mit Dimensionen von 1x1 Pixeln ermöglicht (Firefox-Bug 1499360).
Sonstiges
- Für
unexpected alert open-Fehler werden informativere Nachrichten bereitgestellt (Firefox-Bug 1502268).
Sonstiges
-
Unterstützung für WebP Bilder wurde hinzugefügt (Firefox-Bug 1294490).
- Zusätzlich wurde der WebP MIMEType (
image/webp) in den Standard-HTTP-RequestAccept-Header für HTML-Dateien aufgenommen, um die plattformübergreifende Kompatibilität in bestimmten Situationen zu erleichtern (Firefox-Bug 1507691).
- Zusätzlich wurde der WebP MIMEType (
-
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, was 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.TabTyp hat nun einesuccessorId-Eigenschaft, die verwendet werden kann, um die ID des Nachfolgers des Tabs zu speichern/abzurufen. - Der Rückruf des Ereignislisteners
tabs.onActivatedhat einen neuen verfügbaren Parameter,previousTabId, der die ID des zuvor aktivierten Tabs enthält, falls dieser noch offen ist. - Das
updateProperties-Objekt der Funktiontabs.update()hat eine neue, optionale Eigenschaft,successorTabId, die zum Aktualisieren verwendet werden kann. successorTabIdwird auch durch Funktionen wietabs.get()undtabs.query()zurückgegeben.- Die neue Funktion
tabs.moveInSuccession()ermöglicht das Bearbeiten von Tab-Nachfolgern im Bulk.
- 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 Veröffentlichtungspost: Firefox 65: WebP-Support, Flexbox-Inspektor, neue Tools & Plattform-Updates