Versionshinweise für Entwickler zu Firefox 41
Um die neuesten Entwicklerfunktionen von Firefox zu testen, installieren Sie die Firefox Developer Edition. Firefox 41 wurde am 22. September 2015 veröffentlicht. Dieser Artikel listet wichtige Änderungen auf, die nicht nur für Webentwickler nützlich sind, sondern auch für Firefox- und Gecko-Entwickler sowie für Add-on-Entwickler.
Änderungen für Webentwickler
>Entwicklerwerkzeuge
Höhepunkte:
- Erstellen Sie einen Screenshot eines DOM-Knotens
- Kopieren/als HAR speichern
- "Regel hinzufügen"-Schaltfläche in der Regelansicht
- Quellcode in einem Tab anzeigen (Standardmäßig deaktiviert)
- Weitere Optionen zum Kopieren von CSS-Regeln
- Bild als Daten-URL in der Regelansicht kopieren
- Befehl zum Anzeigen von CSP-Informationen zu GCLI hinzugefügt
Alle Devtools-Bugs, die zwischen Firefox 40 und Firefox 41 behoben wurden: beachten Sie, dass viele dieser Fehler, insbesondere die, die sich auf die Leistungstools beziehen, auf Firefox 40 übertragen wurden.
CSS
-
Die Unterstützung für das Layout von vertikalen Schriften wurde standardmäßig aktiviert (Firefox-Bug 1138384). Dies bedeutet, dass die folgenden CSS-Eigenschaften jetzt verfügbar sind:
-
Auswahl der Schreibrichtung:
writing-mode. -
Steuerung der Orientierung von Zeichen:
text-orientation. -
Richtungsunabhängige Äquivalente von
widthundheight:block-sizeundinline-size. -
Richtungsunabhängige Äquivalente von
min-widthundmin-height:min-block-sizeundmin-inline-size. -
Richtungsunabhängige Äquivalente von
max-widthundmax-height:max-block-sizeundmax-inline-size. -
Richtungsunabhängige Äquivalente von
margin-top,margin-right,margin-bottomundmargin-left:margin-block-start,margin-block-end,margin-inline-startundmargin-inline-end. -
Richtungsunabhängige Äquivalente von
padding-top,padding-right,padding-bottomundpadding-left:padding-block-start,padding-block-end,padding-inline-startundpadding-inline-end. -
Richtungsunabhängige Äquivalente von
border-top,border-right,border-bottomundborder-leftsowie ihre Langformen für Breite, Stil und Farbe:border-block-start,border-block-start-width,border-block-start-style,border-block-start-color,border-block-end,border-block-end-width,border-block-end-style,border-block-end-color,border-inline-start,border-inline-start-width,border-inline-start-style,border-inline-start-color,border-inline-end,border-inline-end-width,border-inline-end-styleundborder-inline-end-color. -
Richtungsunabhängige Äquivalente von
top,right,bottomundleft:offset-block-start,offset-block-end,offset-inline-startundoffset-inline-end.
-
-
Unterstützung für die
transform-origin-Eigenschaft in SVG und Implementierung dertransform-box-Eigenschaft (Firefox-Bug 923193).
HTML
<a>ohne einhref-Attribut wird nicht mehr als interaktiver Inhalt klassifiziert. Ein Klick darauf innerhalb von<label>aktiviert den bezeichneten Inhalt (Firefox-Bug 1167816).- SVG-Symbole werden nun für Website-Symbole unterstützt, also Favicons und Shortcut-Symbole (Firefox-Bug 366324).
- Das Attribut
crossoriginwird jetzt für <link rel='preconnect'> unterstützt (Firefox-Bug 1174152). - Das
picture-Element reagiert nicht auf Größenänderungen/Änderungen des Ansichtsfensters (Firefox-Bug 1135812).
JavaScript
Date.prototypeist jetzt ein gewöhnliches Objekt und nicht mehr eineDate-Instanz (Firefox-Bug 861219).Date.prototype.toStringist jetzt eine generische Methode (Firefox-Bug 861219).Symbol.specieswurde hinzugefügt (Firefox-Bug 1131043).- Die Getter für
Map[Symbol.species]undSet[Symbol.species]wurden hinzugefügt (Firefox-Bug 1131043). - Die Unterstützung für nicht standardisierte let-Ausdrücke wurde eingestellt (Firefox-Bug 1023609).
- Zerstückelte Parameter mit Standardwertzuweisung werden jetzt unterstützt (Firefox-Bug 1018628).
- Gemäß ES2015 sind geschweifte Klammern jetzt für Methodendefinitionen erforderlich. Die Syntax ohne sie wird jetzt fehlschlagen (Firefox-Bug 1150855).
- Methodendefinitionen (außer für Generator-Methoden) sind nicht mehr konstruierbar (Firefox-Bug 1059908 und Firefox-Bug 1166950).
- Im Rahmen der Einhaltung der ES2015-Spezifikation werden jetzt klammerte Destrukturierungsmuster, wie
([a, b]) = [1, 2]oder({a, b}) = { a: 1, b: 2 }, als ungültig angesehen und werfen einenSyntaxError. Mehr Details finden Sie in Jeff Waldens Blog-Post. - Die Syntax
new.targetwurde hinzugefügt (Firefox-Bug 1141865).
Schnittstellen/APIs/DOM
HTML-Bearbeitungs-API
- Der Umgang mit Ausschneiden-, Kopieren- und Einfügen-Befehlen wurde überarbeitet und erlaubt jetzt das programmgesteuerte Kopieren und Ausschneiden von JS aus für Webinhalte:
- Bei dem Befehl
'paste'als Argument gibtDocument.queryCommandSupported()jetztfalsezurück, wenn unzureichende Berechtigungen bestehen, um die Aktion tatsächlich auszuführen (Firefox-Bug 1161721). - Bei den Befehlen
'cut'oder'copy'als Argument gibtDocument.queryCommandSupported()jetzttruezurück, wenn es im Kontext von benutzerinitiiertem oder privilegiertem Code aufgerufen wird (Firefox-Bug 1162952). - Bei den Befehlen
'cut'oder'copy'als Argument funktioniertDocument.execCommand()jetzt, aber nur innerhalb des Kontexts von benutzerinitiiertem oder privilegiertem Code (Firefox-Bug 1012662). - Anstatt eine Ausnahme auszulösen, wenn der Befehl nicht unterstützt oder aktiviert ist, funktioniert
Document.execCommand()jetzt (Firefox-Bug 1027560).
- Bei dem Befehl
Ereignisse
- Die nicht standardisierte Methode
initCloseEvent()desCloseEvent-Ereignisses und die Möglichkeit, einCloseEventmit der Methodedocument.createEvent('CloseEvent')zu erstellen, wurden entfernt; verwenden Sie statt dessen den Standardkonstruktor,CloseEvent()(Firefox-Bug 1161950). - Auf dem Desktop ist
PointerEventstandardmäßig in der Nightly-Version aktiviert; es ist weder in der Developer Edition, Beta noch in der Release-Version aktiviert und wird es auch für mindestens einige Versionen nicht sein (Firefox-Bug 1166347). - Die unpräfixte Version von
MouseEvent.movementXundMouseEvent.movementYwurden hinzugefügt; die präfixierten Versionen sind veraltet und werden irgendwann in der Zukunft entfernt (Firefox-Bug 1164981).
Web Crypto
SubtleCrypto.importKey()undSubtleCrypto.exportKey()unterstützen jetztECDH-Schlüssel (Firefox-Bug 1050175).
Canvas-API
HTMLCanvasElement.captureStream()undCanvasCaptureMediaStreamwurden hinzugefügt und ermöglichen es, die Anzeige eines<canvas>in Echtzeit zu streamen (Firefox-Bug 1032848).MediaStream.idgibt jetzt die eindeutige ID eines Streams zurück (Firefox-Bug 1089798).- Der Initialwert von
CanvasRenderingContext2D.filterwird jetzt korrekt aufnonegesetzt (Firefox-Bug 1163124).
Service Workers
-
Verbesserung unserer experimentellen Service Worker-Implementierung:
ServiceWorkerGlobalScope.skipWaiting()wurde implementiert (Firefox-Bug 1131352).Clients.claim()wurde hinzugefügt (Firefox-Bug 1130684).- Die anderen funktionalen Ereignisse von Service Workern wurden dahingehend verändert, dass sie von
ExtendableEventerben, wodurch sie Zugriff auf die MethodewaitUntil()haben (Firefox-Bug 1160527).
-
Die Schnittstellen
CacheStorageundCachewerden jetzt unterstützt (Firefox-Bug 1110144).
WebGL
- Das
failIfMajorPerformanceCaveat-Attribut des WebGL-Kontexts wurde hinzugefügt und kann beim Erstellen eines WebGL-Kontexts mitHTMLCanvasElement.getContext()gesetzt werden, um anzugeben, ob die Kontext-Erstellung fehlschlagen soll, wenn die Systemleistung niedrig ist (Firefox-Bug 1164970).
WebRTC
- Firefox bietet keinen Standard-STUN-Server mehr an, der verwendet wird, wenn bei der Konstruktion einer neuen
RTCPeerConnectionkeiner angegeben wird. Sie müssen einen bereitstellen, um eine WebRTC-Verbindung erfolgreich herzustellen.
Verschiedenes
- Unter OS X und Windows ändert sich
Navigator.onLinejetzt in Bezug auf die Netzwerkverbindung (es gab immertruezurück, außer wenn der Modus "Offline arbeiten" ausgewählt war, zuvor) (Firefox-Bug 654579). MessagePortundMessageChannelsind jetzt in Webarbeiten verfügbar und in allen Kontexten standardmäßig aktiviert (Firefox-Bug 952139) und (Firefox-Bug 911972).- Die User Timing API ist jetzt in Webarbeiten verfügbar (Firefox-Bug 1155761).
- Die Notifications API ist jetzt in Webarbeiten verfügbar (Firefox-Bug 916893).
DOMRequestundDOMCursorsind jetzt in Webarbeiten verfügbar (Firefox-Bug 1167650).- Die CSS-Schriftlade-API wurde komplett implementiert und ist jetzt standardmäßig aktiviert (Firefox-Bug 1149381).
- Gemeinsame Arbeiter können nicht mehr zwischen privaten (d.h. beim Browsen in einem privaten Fenster) und nicht privaten Dokumenten geteilt werden (siehe Firefox-Bug 1177621).
- Die Eigenschaft
URL.searchParamsist jetzt schreibgeschützt (Firefox-Bug 1174731). - Die Eigenschaft
HTMLAnchorElement.hashdekodiert keine URL-Fragmente mehr (Firefox-Bug 1093611).
MathML
Neue Standard- und Fallback-Schrifthandhabung
Mathematische Formeln erfordern spezielle Schriftarten. Bisher waren diese Schriftarten im mathml.css-Benutzeragenten-Stylesheet fest codiert (das die Schriftfamilie auf dem <math>-Tag setzt) und in der Einstellung font.mathfont-family (die die Ersatzschriften festlegt, die für streckbare und große Operatoren verwendet werden sollen). Firefox 41 führt eine interne x-math-Sprache ein, die automatisch auf dem <math>-Tag gesetzt wird sowie entsprechende Einstellungsoptionen (z. B. font.name.serif.x-math). Das Benutzeragenten-Stylesheet setzt jetzt die Schriftfamilie auf Serif auf dem <math>-Tag und die Einstellung font.mathfont-family wird durch font.name.serif.x-math ersetzt. Alle Plattformen verwenden jetzt im Wesentlichen dieselbe Liste von Ersatzschriften, wobei "Latin Modern Math" die erste ist. Die Standard-/Ersatzschriften können aus dem Font-Einstellungsmenü pro Sprache konfiguriert werden. Für weitere Details siehe Firefox-Bug 947654 und Firefox-Bug 1160456.
SVG
- Website-Symbole (Favicons, Shortcut-Symbole) unterstützen jetzt SVG (Firefox-Bug 366324).
Audio/Video
- Die Einstellung
media.autoplay.enabledgilt jetzt auch für nicht vertrauenswürdige Aufrufe vonHTMLMediaElement.play(), das heißt Aufrufe von nicht durch den Benutzer aktivierten Skripten (Firefox-Bug 659285).
Networking
- Der
X-Content-Duration-Header wird nicht mehr unterstützt (Firefox-Bug 1160695). - Entwürfe der HTTP/2-Protokolle werden nicht mehr unterstützt (Firefox-Bug 1132357).
Sicherheit
- Die CSP 1.1
manifest-srcDirektive wird jetzt unterstützt (Firefox-Bug 1089255). - In früheren Versionen von Firefox wurde erwartet, dass der Wert der Referer-Richtlinie {der Content Security Policy](/de/docs/Web/HTTP/Guides/CSP)
origin-when-cross-originalsorigin-when-crossorigingeschrieben wurde. Dies wurde korrigiert, um den fehlenden Bindestrich zu berücksichtigen.
Änderungen für Add-on- und Mozilla-Entwickler
>XUL
Keine Änderung.
JavaScript-Code-Module
Keine Änderung.
XPCOM
>Schnittstellen
Keine Änderung.
Sonstiges
- Eine neue, interne und nur für Chrome-Kontexte gültige API zum Rendern des Root-Widgets eines Fensters in ein
<canvas>wurde hinzugefügt:CanvasRenderingContext2D.drawWidgetAsOnScreen(). Diese API verwendet das Betriebssystem, um das Widget auf dem Bildschirm zu erfassen. Weitere Details finden Sie im Firefox-Bug 1167477.