Firefox 65 für Entwickler

Dieser Artikel bietet Informationen über die Änderungen in Firefox 65, die Entwickler betreffen werden. Firefox 65 wurde am 29. Januar 2019 veröffentlicht.

Änderungen für Web-Entwickler

Entwicklerwerkzeuge

  • Der Flexbox-Inspektor ist jetzt standardmäßig aktiviert.
  • Der JavaScript-Debugger unterstützt jetzt XHR-Breakpoints (Firefox Bug 821610).
  • Sie können mit der rechten Maustaste auf ein Element im Barrierefreiheitsbaum im Barrierefreiheitsbetrachter klicken, um es als JSON zu drucken zum JSON-Viewer.
  • Die Farbkontrast-Anzeige des Barrierefreiheitspickers wurde aktualisiert, sodass bei komplexen Hintergründen (z. B. Verlaufs- oder komplexen Bildern) ein Bereich von Farbbereichskontrastwerten angezeigt wird.
  • Der Registerkarte "Headers" des Netzwerkmonitors zeigt jetzt die Referrer-Policy für die ausgewählte Anforderung an (Firefox Bug 1496742).
  • Beim Anzeigen von Stapelspuren (z. B. in Konsolenprotokollen oder dem JavaScript-Debugger) werden Aufrufe von Framework-Methoden standardmäßig identifiziert und reduziert, was es einfacher macht, sich auf Ihren Code zu konzentrieren.
  • In ähnlicher Weise wie bei nativen Terminals können Sie nun die Rückwärtssuche verwenden, um Einträge in Ihrem JavaScript-Konsolenverlauf zu finden (F9 unter Windows/Linux oder Ctrl + R auf macOS, dann einen Suchbegriff eingeben, gefolgt von Ctrl + R/Ctrl + S, um durch die Ergebnisse zu blättern).
  • Der $0-Shortcut der JavaScript-Konsole (verweist auf das derzeit untersuchte Element auf der Seite) verfügt nun über eine Autovervollständigung, sodass Sie beispielsweise $0.te eingeben können, um Autovervollständigungsvorschläge für Eigenschaften wie $0.textContent zu erhalten.
  • Änderungen, die Sie in der Ansicht Regeln des Inspektors vornehmen, werden jetzt im Änderungen-Panel aufgelistet (Firefox Bug 1503920).

HTML

CSS

  • Der crisp-edges-Wert der image-rendering-Eigenschaft ist jetzt nicht mehr mit einem Präfix versehen (Firefox Bug 1496617).

  • Ein scrollbar-color-Wert von auto löst sich jetzt in auto auf, anstatt in zwei Farben (Firefox Bug 1501418).

  • Die break-*-Eigenschaften wurden implementiert, und die veralteten page-break-*-Eigenschaften wurden mit ihnen aliasiert (Firefox Bug 775618):

  • Der anywhere-Wert der overflow-wrap-Eigenschaft wurde implementiert (Firefox Bug 1505786).

  • Die neuen Schrittpositions-Keywords jump-start, jump-end, jump-none und jump-both – die in der steps()-Timing-Funktion verwendet werden können – wurden implementiert (Firefox Bug 1496619). Dies fällt auch mit der Entfernung der frames()-Timing-Funktion zusammen, die der bisherige Weg zur Implementierung solcher Funktionalität war und nun veraltet ist.

  • Einige neue -webkit-appearance-Werte wurden hinzugefügt, um die Kompatibilität mit anderen Browsern zu gewährleisten. Besonders:

    • meter, das jetzt als Standardwert für <meter>-Elemente in UA-Stylesheets verwendet wird. Der vorhandene Wert meterbar ist jetzt ein Alias für meter (Firefox Bug 1501483).
    • progress-bar, das jetzt als Standardwert für <progress>-Elemente in UA-Stylesheets verwendet wird. Der vorhandene Wert progressbar ist jetzt ein Alias für progress-bar (Firefox Bug 1501506).
    • textarea, das jetzt als Standardwert für <textarea>-Elemente in UA-Stylesheets verwendet wird. Der vorhandene Wert textfield-multiline ist jetzt ein Alias für textarea (Firefox Bug 1507905).
  • Das Verhalten von user-select wurde geändert, um es mehr mit anderen Browsern in Einklang zu bringen (Firefox Bug 1506547). Insbesondere:

    • user-select: all, das auf ein Element gesetzt ist, überschreibt nicht mehr andere Werte von user-select, die auf den Kindelementen dieses Elements gesetzt sind. So zum Beispiel in folgendem Snippet:

      html
      <div style="-webkit-user-select: all">
        All
        <div style="-webkit-user-select: none">None</div>
      </div>
      

      Das <div> mit none darauf ist jetzt nicht auswählbar. Zuvor wäre dieser Wert durch den auf dem übergeordneten Element gesetzten all-Wert überschrieben worden.

    • Nicht-contenteditable-Elemente, die in contenteditable-Elementen verschachtelt sind, sind jetzt auswählbar.

    • user-select verhä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

SVG

Keine Änderungen.

JavaScript

APIs

Neue APIs

DOM

DOM-Ereignisse

Web Workers

Fetch und Service Workers

Medien, Web Audio und WebRTC

  • Das WebRTC RTCIceCandidateStats-Wörterbuch wurde entsprechend den neuesten Spezifikationsänderungen aktualisiert (Firefox Bug 1324788, Firefox Bug 1489040; RTCIceCandidateStats wurde auf die neueste Spezifikation aktualisiert, um genauere Informationen zu erhalten, was sich geändert hat).
  • Die pause- und resume-Ereignisse des MediaRecorder (und ihre entsprechenden Ereignis-Handler-Eigenschaften wurden bisher nicht implementiert, obwohl die Kompatibilitätstabellen behaupteten, sie seien implementiert worden. Sie wurden jetzt implementiert (Firefox Bug 1458538, Firefox Bug 1514016).

Canvas und WebGL

Entfernungen

  • Mutations-Ereignisse wurden in Schattenbäumen deaktiviert (Firefox Bug 1489858).
  • Die nicht standardmäßige MediaStream-Eigenschaft currentTime wurde entfernt (Firefox Bug 1502927).
  • Die Voreinstellungen dom.webcomponents.shadowdom.enabled und dom.webcomponents.customelements.enabled wurden entfernt — Shadow-DOM und benutzerdefinierte Elemente können nicht mehr in about:config deaktiviert werden (Firefox Bug 1503019).
  • Das nicht standardmäßige DOM text-Ereignis — das zum Benachrichtigen der Browser-Editor-Benutzeroberfläche über IME-Kompositionszeichendaten und Auswahlbereich ausgelöst wurde — 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 die Enter-Taste und die Shift + Enter- und Ctrl + Enter-Tastenkombinationen (diese wurden aus Gründen der browserübergreifenden Kompatibilität beibehalten).

Sicherheit

Netzwerke

Keine Änderungen.

Plugins

Keine Änderungen.

WebDriver-Konformität (Marionette)

API-Änderungen

  • WebDriver:ElementSendKeys behandelt <input type=file> jetzt lockerer für Interaktivitätsprüfungen und erlaubt es, dass diese Elemente versteckt sind, ohne mehr einen not interactable-Fehler auszulösen. Wenn eine strikte Interaktivitätsprüfung gewünscht wird, kann die Fähigkeit strictFileInteractability verwendet werden (Firefox Bug 1502864).

Fehlerbehebungen

  • Die Fenster-Manipulationsbefehle WebDriver:FullscreenWindow, WebDriver:MinimizeWindow, WebDriver:MaximizeWindow und WebDriver:SetWindowRect wurden stabiler gemacht (Firefox Bug 1492499). Das bedeutet, dass sie unter besonderen Bedingungen nicht mehr in eine unendliche Wartezeit gelangen, sondern nach 5 Sekunden ablaufen, wenn der gewünschte Fensterzustand nicht erreicht werden kann (Firefox Bug 1521527).
  • WebDriver:ElementClick berechnet jetzt korrekt den Mittelpunkt des Elements, auf das geklickt werden soll, was Interaktionen mit Abmessungen 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-MIME-Typ (image/webp) in die standardmäßige HTTP-Anfragskopfzeile Accept für HTML-Dateien aufgenommen, um in bestimmten Situationen die Kompatibilität für andere Browser zu erleichtern (Firefox Bug 1507691).
  • 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, bei dem es sich um die ID des Tabs handelt, das aktiv wird, wenn es geschlossen wird (Firefox Bug 1500479, siehe auch diesen Blogpost für weitere Informationen). Insbesondere:
    • Der tabs.Tab-Typ hat jetzt eine successorId-Eigenschaft, die verwendet werden kann, um die ID des Tab-Nachfolgers zu speichern/abzurufen.
    • Der Callback des tabs.onActivated-Ereignislisteners hat einen neuen verfügbaren Parameter, previousTabId, der die ID des zuvor aktivierten Tabs enthält, falls er noch geöffnet ist.
    • Das updateProperties-Objekt der tabs.update()-Funktion hat eine neue optionale Eigenschaft, successorTabId, die zur Aktualisierung verwendet werden kann.
    • successorTabId wird auch von Funktionen wie tabs.get() und tabs.query() zurückgegeben.
    • Die neue Funktion tabs.moveInSuccession() erlaubt die Manipulation von Tab-Nachfolgern in großen Mengen.

Manifest-Änderungen

Keine Änderungen.

Sonstiges

Siehe auch

Ältere Versionen