Firefox 66 für Entwickler

Dieser Artikel bietet Informationen über die Änderungen in Firefox 66, die Entwickler betreffen. Firefox 66 wurde am 19. März 2019 veröffentlicht.

Änderungen für Webentwickler

Entwickler-Tools

  • JavaScript-Getter können jetzt aus dem Auto-Vervollständigungspopup in der Web-Konsole ausgeführt werden (Firefox-Bug 1499289).
  • Die Methoden alert(), prompt(), und confirm() des Window-Objekts funktionieren jetzt wieder im Modus für responsives Design, nachdem sie eine Zeit lang fehlerhaft waren (Firefox-Bug 1273997).
  • Sie können die Konsolenausgabe in die Zwischenablage kopieren, indem Sie mit der rechten Maustaste klicken und „Sichtbare Nachrichten in Zwischenablage exportieren“ aus dem Kontextmenü auswählen.

HTML

  • UTF-8-kodierte HTML- (und Klartext-)Dateien, die von file:-URLs geladen werden, werden jetzt ohne <meta charset="utf-8"> oder das UTF-8-BOM unterstützt, was es erleichtert, lokal an solchen Dateien zu arbeiten, bevor sie auf einen Server hochgeladen werden. Sie müssen jedoch sicherstellen, dass der Server charset=utf-8 im Content-Type HTTP-Header für solche Dateien sendet, da der für lokale Dateien verwendete Erkennungsmechanismus ansonsten das inkrementelle Laden im Netzwerkszenario unterbrechen würde (Firefox-Bug 1071816).

Entfernungen

CSS

SVG

Keine Ergänzungen.

Entfernungen

JavaScript

Keine Änderungen.

APIs

Neue APIs/Änderungen

  • Automatisch abgespielte Audios werden bald nach dem Zeitpunkt, an dem 66 die Release-Version von Firefox wird, standardmäßig blockiert (Firefox-Bug 1487844, siehe Firefox-Bug 1535667 für Rollout-Details). Das Feature wird schrittweise für Benutzer ausgerollt, bis es jeder hat.

DOM

DOM-Ereignisse

  • Die Eigenschaft InputEvent.inputType wurde implementiert (Firefox-Bug 1447239).
  • Die Eigenschaften Window.event und Event.returnValue – ursprünglich proprietäre IE-Features, dann aus Kompatibilitätsgründen auch in anderen Browsern unterstützt – wurden in Firefox 66 wieder eingeführt, nachdem sie zuerst in den Versionen 63 und 64 hinzugefügt, dann aber wegen Kompatibilitätsproblemen wieder entfernt wurden.
  • Ab Version 66 wird der Wert der Eigenschaft KeyboardEvent.keyCode des Objekts des keypress-Ereignisses 0 sein, wenn es dasselbe wie KeyboardEvent.charCode ist. Umgekehrt ist, wenn charCode 0 ist, dieser Wert identisch mit keyCode. Dieses Spiegelverhalten entspricht anderen Browsern und wird voraussichtlich die meisten damit verbundenen Kompatibilitätsprobleme lösen, wobei User-Agent-Sniffing in einigen JavaScript-Bibliotheken weitere Probleme verursachen könnte. In Bezug auf die Spezifikation haben wir vom split model zum conflated model gewechselt (siehe Anleitung zur Bestimmung von keyCode für keypress-Ereignisse in der UI-Event-Spezifikation).

Medien, Web Audio und WebRTC

  • Der neue AV1-Videocodec ist jetzt unter macOS und Windows (für Intel-Prozessoren) standardmäßig aktiviert. Linux-Unterstützung wird in Firefox 67 folgen (Firefox-Bug 1521181, Firefox-Bug 1452146, und Firefox-Bug 1534814).
  • Die Methode MediaDevices getDisplayMedia(), verfügbar als navigator.mediaDevices.getDisplayMedia(), wurde hinzugefügt und mit der Spezifikation synchronisiert. Diese Methode ermöglicht es Ihnen, einen Bildschirm oder einen Teil eines Bildschirms als MediaStream zur Manipulation oder Freigabe zu erfassen (Firefox-Bug 1321221).
  • Als Schritt in Richtung der eventuellen Abschaffung der Firefox-spezifischen Methode getUserMedia() zur Erfassung von Bildschirm- und Fensterinhalten behandelt die nicht standardmäßige mediaSource-Einschränkung jetzt die Werte screen und window identisch. Beide zeigen jetzt eine Liste von Bildschirmen und Fenstern, aus denen der Benutzer wählen kann (Firefox-Bug 1474376).
  • RTCOutboundRtpStreamStats.qpSum wurde hinzugefügt. Dies misst die Summe der Quantisierungsparameterwerte für jeden gesendeten oder empfangenen Frame auf der Videospur. Je höher diese Zahl, desto stärker komprimiert ist der Stream wahrscheinlich (Firefox-Bug 1347070).
  • In einem Schritt auf dem Weg zur Unterstützung von Feature Policy in einem zukünftigen Firefox-Update kann getUserMedia() nicht mehr in Situationen verwendet werden, in denen es keinen ordnungsgemäßen Herkunftsort für den Inhalt gibt, wie zum Beispiel bei einem Aufruf aus einem sandboxed <iframe> oder von einer data-URL, die vom Benutzer in die Adressleiste eingegeben wurde. Weitere Details finden Sie im Sicherheits-Abschnitt auf der Seite MediaDevices.getUserMedia() (Firefox-Bug 1371741).

Entfernungen

  • Die Legacy-WebRTC-Methode PeerConnection.getStats() wurde zusammen mit den zugehörigen Typen entfernt (Firefox-Bug 1328194).

Netzwerk

Sicherheit

Keine Änderungen.

Plugins

Keine Änderungen.

WebDriver-Konformität (Marionette)

API-Änderungen

  • WebDriver:NewWindow wurde hinzugefügt, um das Öffnen eines neuen Browsing-Kontextes zu unterstützen, der entweder Fenster oder Tab sein kann (Firefox-Bug 1504756).

  • WebDriver:SwitchToFrame löst jetzt einen no such element-Fehler aus, wenn das angegebene Element nicht Teil des aktuellen Browsing-Kontextes ist (Firefox-Bug 1517196).

  • WebDriver:ExecuteScript und WebDriver:ExecuteAsyncScript unterstützen nicht mehr den nicht spezifikationskonformen scriptTimeout-Parameter. Stattdessen verwenden Sie WebDriver:SetTimeout oder die timeouts-Fähigkeit, um diesen Wert zu definieren (Firefox-Bug 1510929).

  • WebDriver:SetWindowRect gibt den Fensterstatus in seiner Antwort nicht mehr zurück (Firefox-Bug 1517587).

Fehlerbehebungen

Änderungen für Add-on-Entwickler

API-Änderungen

Menüs

  • Erweiterungsmenüpunkte des "bookmark" type werden auch in der Lesezeichen-Seitenleiste (Strg + B) und im Bibliotheksfenster (Strg + Umschalt + B) angezeigt (Firefox-Bug 1419195).

Manifest-Änderungen

Keine Änderungen.

Siehe auch

Ältere Versionen