Firefox-65-Release-Notes für Entwickler
Dieser Artikel enthält 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.
- Dem JavaScript-Debugger wurde Unterstützung für XHR-Breakpoints hinzugefügt (Firefox-Bug 821610).
- Klicken Sie im Barrierefreiheitsbaum der Barrierefreiheitsansicht mit der rechten Maustaste auf ein Element, um es als JSON im JSON-Viewer auszugeben.
- Die Anzeige des Farbkontrasts der Barrierefreiheitsauswahl wurde aktualisiert: Wenn der Hintergrund eines Textes komplex ist (z. B. ein Farbverlauf oder ein komplexes Bild), wird nun ein Bereich von Farbkontrastwerten angezeigt.
- Der Tab „Headers“ 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 Konsolenprotokollen oder im JavaScript-Debugger) werden Aufrufe von Framework-Methoden erkannt und standardmäßig eingeklappt, wodurch sich Ihr Code leichter finden lässt.
- Wie in nativen Terminals können Sie jetzt die umgekehrte Suche verwenden, um Einträge in Ihrem JavaScript-Konsolenverlauf zu finden (
F9unter Windows/Linux oderCtrl+Runter macOS, dann einen Suchbegriff eingeben, gefolgt vonCtrl+R/Ctrl+S, um zwischen Ergebnissen zu wechseln). - Die
$0-Verknüpfung der JavaScript-Konsole (verweist auf das aktuell auf der Seite untersuchte Element) verfügt jetzt über Autovervollständigung. Sie können beispielsweise$0.teeingeben, um Autovervollständigungsvorschläge für Eigenschaften wie$0.textContentzu erhalten. - Die Änderungen, die Sie in der Rules-Ansicht des Inspektors vornehmen, werden jetzt im Changes-Panel aufgeführt (Firefox-Bug 1503920).
HTML
- Ereignisse werden jetzt auf deaktivierten HTML-Elementen ausgelöst, d.h. auf
<button>-,<fieldset>-,<input>-,<select>- und<textarea>-Elementen, bei denen das Attributdisabledgesetzt ist (Firefox-Bug 329509). - Das Entfernen des Attributs
srceines<iframe>-Elements führt jetzt dazu, dassabout:blankdarin geladen wird, wodurch das Verhalten mit Chrome und Safari übereinstimmt (Firefox-Bug 1507842). Zuvor hatte das Entfernen vonsrckeine Auswirkung auf den Inhalt desiframe. - Unterstützung für das Attribut
referrerpolicyauf<script>-Elementen wurde hinzugefügt (Firefox-Bug 1460920).
CSS
-
Der Wert
crisp-edgesder Eigenschaftimage-renderingwurde nun von seinem Präfix befreit (Firefox-Bug 1496617). -
Ein
scrollbar-color-Wert vonautowird jetzt zuautoaufgelöst und nicht mehr zu zwei Farben (Firefox-Bug 1501418). -
Die
break-*-Eigenschaften wurden implementiert und die veraltetenpage-break-*-Eigenschaften als Aliase darauf gesetzt (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 Wert
anywhereder Eigenschaftoverflow-wrapwurde implementiert (Firefox-Bug 1505786). -
Die neuen Schlüsselwörter für Schrittpositionen
jump-start,jump-end,jump-noneundjump-both— verwendbar innerhalb dersteps()-Timing-Funktion — wurden implementiert (Firefox-Bug 1496619). Dies geht auch mit der Entfernung derframes()-Timing-Funktion einher, die zuvor zur Implementierung solcher Funktionen verwendet wurde und nun veraltet ist. -
Einige neue Werte für
-webkit-appearancewurden zur Kompatibilität mit anderen Browsern hinzugefügt. Insbesondere:meter, das 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, das 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, das 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 es stärker an andere Browser anzugleichen (Firefox-Bug 1506547). Im Einzelnen:-
user-select: all, das auf einem Element gesetzt ist, überschreibt nicht länger andere Werte vonuser-select, die auf Kindelementen dieses Elements gesetzt sind. Beispielsweise im folgenden Ausschnitt:html<div style="-webkit-user-select: all"> All <div style="-webkit-user-select: none">None</div> </div>Das
<div>mit dem gesetzten Wertnoneist jetzt nicht auswählbar. Zuvor wäre dieser Wert durch den auf dem übergeordneten Element gesetzten Wertallüberschrieben worden. -
Nicht-
contenteditable-Elemente, die innerhalb voncontenteditable-Elementen verschachtelt sind, sind jetzt auswählbar. -
user-selectverhält sich jetzt innerhalb und außerhalb von Shadow DOM konsistent. -
Der proprietäre Wert
-moz-textwurde entfernt.
-
-
CSS-Umgebungsvariablen (die Funktion
env()) wurden implementiert (Firefox-Bug 1462233).
Entfernungen
- Die Einstellung
layout.css.shape-outside.enabledwurde entfernt;shape-outside,shape-marginundshape-image-thresholdkönnen nicht länger inabout:configdeaktiviert werden (Firefox-Bug 1504387). - Mehrere Firefox-exklusive Werte der Eigenschaft
user-selectwurden entfernt —-moz-all,-moz-text,tri-state,element,elementsundtoggle. 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(~1 GB) statt2**28 - 1(~256 MB) (Firefox-Bug 1509542). - Die Eigenschaft
globalThis, die immer auf das globale Objekt der obersten Ebene 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 verfügbar gemacht (Firefox-Bug 1504958).XMLHttpRequest-Anfragen lösen jetzt einenNetworkErroraus, wenn der angeforderte Inhaltstyp einBlobist und die Anfragemethode nichtGETlautet (Firefox-Bug 1502599).- Die mit
-moz-präfixierten Versionen vieler Funktionen der Fullscreen API wurden als veraltet markiert und zeigen jetzt bei ihrer Verwendung Warnungen über Veraltung in der JavaScript-Konsole an (Firefox-Bug 1504946). Window.createImageBitmap()undWorkerGlobalScope.createImageBitmap()unterstützen jetzt SVG-Bilder (SVGImageElement) als Bildquelle (Firefox-Bug 1500768).
DOM-Ereignisse
- Künftig ist nur ein Aufruf von
Window.open()pro Ereignis zulässig (Firefox-Bug 675574). - Die Ereignisse
keyupundkeydownwerden jetzt während der IME-Komposition ausgelöst, um die Browser-Kompatibilität für CJKT-Benutzer zu verbessern (Firefox-Bug 354358.
Web Workers
- Das Ereignisobjekt von
SharedWorkerGlobalScope.connectist eine Instanz vonMessageEvent— seine Eigenschaftdataist jetzt ein leerer String stattnull(Firefox-Bug 1508824).
Fetch und Service Workers
- Die Methode
Response.redirect()löst jetzt korrekt einenTypeErroraus, wenn als erster Parameter eine ungültige URL angegeben wird (Firefox-Bug 1503276). - Die Methoden
ServiceWorkerContainer.register()undWorkerGlobalScope.importScripts()(bei Verwendung durch einen Service Worker) 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 Header
Originwird nicht länger bei Fetch-Anfragen mit der MethodeHEADoderGETgesetzt (Firefox-Bug 1508661).
Medien, Web Audio und WebRTC
- Das Wörterbuch
RTCIceCandidateStatsvon WebRTC wurde gemäß den neuesten Spezifikationsänderungen aktualisiert (Firefox-Bug 1324788, Firefox-Bug 1489040; weitere Details zu den genauen Änderungen finden Sie in der Aktualisierung von RTCIceCandidateStats auf die neueste Spezifikation). - Die
pause- undresume-Ereignisse vonMediaRecorder(sowie die entsprechenden Ereignishandler-Eigenschaften) waren zuvor nicht implementiert, obwohl die Kompatibilitätstabellen angaben, dass dies der Fall sei. Sie wurden nun implementiert (Firefox-Bug 1458538, Firefox-Bug 1514016).
Canvas und WebGL
- Die Texturkomprimierungserweiterungen
EXT_texture_compression_bptcundEXT_texture_compression_rgtcvon WebGL wurden für WebGL1- und WebGL2-Kontexte verfügbar gemacht (Firefox-Bug 1507263).
Entfernungen
- Mutation Events wurden in Shadow Trees deaktiviert (Firefox-Bug 1489858).
- Die nicht standardisierte Eigenschaft
currentTimevonMediaStreamwurde entfernt (Firefox-Bug 1502927). - Die Einstellungen
dom.webcomponents.shadowdom.enabledunddom.webcomponents.customelements.enabledwurden entfernt — Shadow DOM und Custom Elements können nicht länger inabout:configdeaktiviert werden (Firefox-Bug 1503019). - Das nicht standardisierte DOM-Ereignis
text— ausgelöst, um die Editor-Benutzeroberfläche des Browsers über IME-Kompositions-Stringdaten und den Auswahlbereich zu informieren — wurde entfernt (Firefox-Bug 1288640). - Das Ereignis
keypresswird nicht länger für nicht druckbare Tasten ausgelöst (Firefox-Bug 968056), mit Ausnahme der TasteEntersowie der TastenkombinationenShift+EnterundCtrl+Enter(diese wurden aus Gründen der Browser-Kompatibilität beibehalten).
Sicherheit
- Zusätzliche CORS-Beschränkungen für zulässige Anfrage-Header werden jetzt durchgesetzt (Firefox-Bug 1483815; weitere Details finden Sie auch unter whatwg fetch issue 382: CORS-safelisted request headers should be restricted according to RFC 7231).
Netzwerk
Keine Änderungen.
Plugins
Keine Änderungen.
WebDriver-Konformität (Marionette)
API-Änderungen
WebDriver:ElementSendKeysbehandelt<input type=file>bei Interaktionsprüfungen jetzt weniger restriktiv und erlaubt, dass diese Elemente ausgeblendet sind, ohne einen Fehlernot interactableauszulösen. Wenn eine strikte Interaktionsprüfung erforderlich ist, kann die CapabilitystrictFileInteractabilityverwendet werden (Firefox-Bug 1502864).
Fehlerbehebungen
- Die Befehle zur Fenstermanipulation
WebDriver:FullscreenWindow,WebDriver:MinimizeWindow,WebDriver:MaximizeWindowundWebDriver: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 ein Timeout auslösen, wenn der angeforderte Fensterstatus nicht erreicht werden kann (Firefox-Bug 1521527). WebDriver:ElementClickberechnet jetzt korrekt den Mittelpunkt des anzuklickenden Elements, wodurch Interaktionen mit Abmessungen von 1x1 Pixel möglich sind (Firefox-Bug 1499360).
Sonstiges
- Für Fehler
unexpected alert openwerden 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 bestimmten Situationen zur Erleichterung der Browser-Kompatibilität zum Standard-HTTP-Anfrage-HeaderAcceptfür HTML-Dateien hinzugefügt (Firefox-Bug 1507691).
- Zusätzlich wurde der WebP-MIME-Typ (
-
Der AV1-Codec wird jetzt unter Windows standardmäßig 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 — einem Tab kann ein Nachfolger zugewiesen werden, also die ID des Tabs, der aktiv sein wird, nachdem er geschlossen wurde (Firefox-Bug 1500479; weitere Informationen finden Sie auch in diesem Blogbeitrag). Insbesondere:
- Der Typ
tabs.Tabverfügt jetzt über eine EigenschaftsuccessorId, mit der die ID des Tab-Nachfolgers gespeichert bzw. abgerufen werden kann. - Der Callback des Event-Listeners
tabs.onActivatedverfügt über einen neuen Parameter,previousTabId, der die ID des zuvor aktivierten Tabs enthält, falls dieser noch geöffnet ist. - Das Objekt
updatePropertiesder Funktiontabs.update()verfügt jetzt über eine neue optionale EigenschaftsuccessorTabId, die zum Aktualisieren verwendet werden kann. successorTabIdwird auch von Funktionen wietabs.get()undtabs.query()zurückgegeben.- Die neue Funktion
tabs.moveInSuccession()ermöglicht die Massenbearbeitung von Tab-Nachfolgern.
- Der Typ
Manifest-Änderungen
Keine Änderungen.
Sonstiges
- Die Eigenschaften
headerURL/theme_framefür WebExtension-Themes werden jetzt in Firefox für Android unterstützt (Firefox-Bug 1429488).
Siehe auch
- Hacks-Veröffentlichungsbeitrag: Firefox 65: WebP support, Flexbox Inspector, new tooling & platform updates