Firefox 40 für Entwickler
Um die neuesten Entwicklertools von Firefox zu testen, installieren Sie die Firefox Developer Edition Firefox 40 wurde am 11. August 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 Add-On-Entwickler.
Änderungen für Webentwickler
Entwickler-Tools
Höhepunkte:
- Verbesserungen in der Animationsansicht
- Hilfe von MDN für CSS-Eigenschaftssyntax erhalten
- Filter im Page Inspector bearbeiten
- Die Webkonsole zeigt jetzt Nachrichten von Arbeitern
- Anfragen nach URL im Netzwerkmonitor filtern
- Viele neue Kontextmenüoptionen im Netzwerkmonitor
- Anzeigen, wann Netzwerkressourcen aus dem Browser-Cache abgerufen werden
- Regeln im Page Inspector filtern
Mehr:
- Anhalten bei debugger;-Anweisungen in nicht benannten eval-Quellen
- URL kopieren/In neuem Tab öffnen Kontextmenüelemente für Debugger-Quellenlistenbereich
- console.dirxml Unterstützung in der Webkonsole
- Style Editor: "Link in neuem Tab öffnen"-Element zur Stylesheet-Liste hinzugefügt
- Inspektor-Duldatorensuche schließt jetzt Klassen-/ID-Ergebnisse auch ohne CSS-Präfix ein
- Tooltips in der Box-Modell-Ansicht zeigen an, welche CSS-Regel den Wert verursacht hat
- Wechsel zwischen Farbformateinheiten im Inspektor mittels Shift+Klick
- "In den Ansichtsbereich scrollen" Menüpunkt für den Inspektor implementiert
- URL/ID/Resource-Attribute im Inspektor verlinken
- IP-Adresse Tooltip im Netzwerkmonitor
Alles: alle Entwicklerwerkzeug-Bugs, die zwischen Firefox 39 und Firefox 40 behoben wurden.
CSS
- Präfixe Regeln (
-moz-
) fürtext-decoration-color
,text-decoration-line
, undtext-decoration-style
wurden entfernt (Firefox Bug 1097922). - Die Eigenschaft
text-align
unterstützt jetzt den Wertmatch-parent
(Firefox Bug 645642). - Im Quirks-Modus setzt
empty-cells
nun standardmäßig aufshow
, wie im Standardmodus (Firefox Bug 1020400). - Die
-moz-orient
nicht standardisierte Eigenschaft, verwendet zur Stilgestaltung der<meter>
und<progress>
Elemente, wurde für vertikale Schreibmodi angepasst: der Wertauto
wurde entfernt und die Werteinline
undblock
hinzugefügt, wobeiinline
der neue Standardwert ist (Firefox Bug 1028716). - Die
font-size-adjust
Eigenschaft wurde korrigiert, sodass0
jetzt als Multiplikator behandelt wird (was zu einer0
Höhe der Schriftart führt und somit zu einer Ausblendung), anstatt alsnone
Wert (was zu keiner Anpassung oder einem1.0
Wert führte) (Firefox Bug 1144885). - Der Fehler, dass text-overflow im vertikalen Schreibmodus nicht funktioniert, wurde behoben (Firefox Bug 1117227).
HTML
Keine Änderung.
JavaScript
- Unerreichbarer Code nach einer
return
-Anweisung (einschließlich unerreichbarer Ausdrücke nach semicolon-less return statements) zeigt jetzt eine Warnung in der Konsole (Firefox Bug 1005110, Firefox Bug 1151931). Symbol.match
wurde hinzugefügt (Firefox Bug 1054755).- Das Übergeben eines Objekts, das eine Eigenschaft mit dem Namen
Symbol.match
mit einem truthy Wert anString.prototype.startsWith
,String.prototype.endsWith
, undString.prototype.contains
hat, löst jetzt einenTypeError
aus (Firefox Bug 1054755). - Die
RegExp
-Funktion gibt das Muster selbst zurück, wenn sie ohnenew
und das Musterobjekt eine Eigenschaft mit dem NamenSymbol.match
mit einem truthy Wert hat, und dieconstructor
-Eigenschaft des Musterobjekts gleich derRegExp
-Funktion ist. (Firefox Bug 1147817). - Die Unterstützung für das nicht standardisierte JS1.7 Destructuring bei for-in wurde entfernt (Firefox Bug 1083498).
- Nicht standardisierte Initialisierungsausdrücke in
for...in
Schleifen werden jetzt ignoriert und zeigen eine Warnung in der Konsole. (Firefox Bug 748550 und Firefox Bug 1164741). \u{xxxxxx}
Unicode-Codepunkt-Fluchten wurden hinzugefügt (Firefox Bug 320500).String.prototype.contains
wurde durchString.prototype.includes
ersetzt,String.prototype.contains
bleibt als Alias erhalten (Firefox Bug 1102219).- Wenn der
DataView
-Konstruktor wie eine Funktion ohne dennew
-Operator aufgerufen wird, wird jetzt gemäß der ES2015-Spezifikation einTypeError
ausgelöst. - Ein Problem, das in Firefox 21 zurückgeführt wurde, bei dem proxifizierte Arrays ohne
get
Falle nicht richtig funktionierten, wurde behoben. Wenn dieget
Falle in einemProxy
nicht definiert war, gabArray.length
0
zurück und dieset
Falle wurde nicht aufgerufen. Ein Workaround war, dieget
Falle hinzuzufügen, auch wenn sie nicht in Ihrem Code notwendig war. Dieses Problem wurde nun behoben (Firefox Bug 895223). WeakMap.prototype
undWeakSet.prototype
wurden aktualisiert und sind jetzt gewöhnliche Objekte, gemäß ES2015-Spezifikation (Firefox Bug 1055473).
Schnittstellen/APIs/DOM
Neue APIs
- Die Push-API wurde experimentell implementiert (Firefox Bug 1038811). Gesteuert durch die
services.push.enabled
Präferenz, ist sie standardmäßig deaktiviert.
Web Animations API
Verbesserung unserer experimentellen Web Animationen Implementierung, meist zur Übereinstimmung mit den neuesten Spezifikationsänderungen:
AnimationPlayer.currentTime
kann jetzt auch gesetzt werden (Firefox Bug 1072037).Animatable.getAnimationPlayers()
, verfügbar aufElement
, wurde inElement.getAnimations()
umbenannt (Firefox Bug 1145246).Animation
undAnimationEffect
wurden in das neu erstellteKeyframeEffectReadOnly
zusammengeführt (Firefox Bug 1153734).AnimationPlayer
wurde inAnimation
umbenannt (Firefox Bug 1154615).AnimationTimeline
ist jetzt eine abstrakte Klasse, mitDocumentTimeline
als einziger Implementierung (Firefox Bug 1152171).
CSSOM
- Die CSS Font Loading API ist jetzt standardmäßig in Nightly und Developer Edition Veröffentlichungen aktiviert (Firefox Bug 1088437). Sie ist jedoch weiterhin standardmäßig in Beta- und Release-Browsern deaktiviert.
- Das
CSSCharsetRule
-Interface wurde entfernt und solche Objekte sind im CSSOM nicht mehr verfügbar (Firefox Bug 1148694). Dies entspricht der (kürzlich angepassten) Spezifikation und dem Verhalten von Chrome.
WebRTC
- WebRTC: das
negotiationneeded
Ereignis wird jetzt auch für Erstverhandlungen gesendet, nicht nur für Neuverhandlungen (Firefox Bug 1149838).
DOM & HTML DOM
- Wenn das
srcset
nicht geparst werden kann, gibt die MethodeHTMLImageElement.currentSrc
nicht mehrnull
zurück, sondern""
, wie von der neuesten Spezifikation gefordert (Firefox Bug 1139560). - Wie bei Bildern, drosselt Firefox jetzt auch
Window.requestAnimationFrame()
für nicht sichtbare<iframe>
(Firefox Bug 1145439). Navigator.taintEnabled
ist für Web-Arbeiter nicht mehr verfügbar (Firefox Bug 1154878).
Web Audio API
Neue Erweiterungen für die Web Audio API:
- Die Eigenschaften
AudioContext.state
undAudioContext.onstatechange
sowie die MethodenAudioContext.suspend()
,AudioContext.resume()
, undAudioContext.close()
wurden hinzugefügt (Firefox Bug 1094764). AudioBufferSourceNode
implementiert jetzt dasAudioBufferSourceNode.detune
k-rate Attribut (Firefox Bug 1153783).
Web Workers
- Leichte Verbesserung in unserer Service Worker API: die Methode
update()
wurde vonServiceWorkerGlobalScope
nachServiceWorkerRegistration
verschoben (Firefox Bug 1131350). ServiceWorkerRegistration
ist jetzt in Web-Arbeitern verfügbar (Firefox Bug 1131327).DataStore
ist jetzt in Web-Arbeitern verfügbar (Firefox Bug 916196).
IndexedDB
IDBTransaction
sind jetzt standardmäßig nicht langlebig (Firefox Bug 1112702). Dies begünstigt die Leistung gegenüber der Zuverlässigkeit und entspricht dem Verhalten anderer Browser. Für weitere Informationen lesen Sie unsere Definition von Beständigkeit.
Dev Tools
- Die Eigenschaft
console.timeStamp()
wurde hinzugefügt (Firefox Bug 922221).
MathML
Keine Änderung.
SVG
Keine Änderung.
Audio/Video
Keine Änderung.
Netzwerke
Keine Änderung.
Sicherheit
- Die Verwendung eines Sternchens (
*
) in einer CSP schließt die Schematadata:
,blob:
oder:filesystem
nicht mehr ein, wenn Quellausdrücke verglichen werden. So müssen diese Schemata jetzt explizit im zugehörigen Header definiert werden, um die CSP zu entsprechen (Firefox Bug 1086999).
Änderungen für Add-On und Mozilla Entwickler
XUL
- Es ist nicht mehr möglich, transparente Top-Level-Fenster zu erstellen Firefox Bug 1162649.
JavaScript Code Module
- Dict.jsm wurde entfernt Firefox Bug 1123309. Verwenden Sie stattdessen
Map
.
XPCOM
- Das
nsIClassInfo.implementationLanguage
Attribut wurde entfernt, zusammen mit dernsClassInfo::GetImplementationLanguage()
Funktion. - Die folgenden XPCOM-Schnittstellen wurden entfernt; Sie sollten stattdessen die standardisierten HTML-Schnittstellen verwenden:
nsIDOMHTMLBRElement
nsIDOMDivElement
nsIDOMHTMLHeadingElement
nsIDOMHTMLTableCaptionElement
nsIDOMHTMLTableElement
nsIDOMHTMLTitleElement
Andere
- Die Places Keywords API wurde abgelehnt und wird bald entfernt (Firefox Bug 1140395).
- Das automatisierte Testsystem unterstützt jetzt das Überspringen einzelner Testfunktionen. Siehe Bedingte Tests ausführen im XPCShell-Testen.
Ältere Versionen
- Firefox 39 für Entwickler
- Firefox 38 für Entwickler
- Firefox 37 für Entwickler
- Firefox 36 für Entwickler
- Firefox 35 für Entwickler
- Firefox 34 für Entwickler
- Firefox 33 für Entwickler
- Firefox 32 für Entwickler
- Firefox 31 für Entwickler
- Firefox 30 für Entwickler
- Firefox 29 für Entwickler
- Firefox 28 für Entwickler
- Firefox 27 für Entwickler
- Firefox 26 für Entwickler
- Firefox 25 für Entwickler
- Firefox 24 für Entwickler
- Firefox 23 für Entwickler
- Firefox 22 für Entwickler
- Firefox 21 für Entwickler
- Firefox 20 für Entwickler
- Firefox 19 für Entwickler
- Firefox 18 für Entwickler
- Firefox 17 für Entwickler
- Firefox 16 für Entwickler
- Firefox 15 für Entwickler
- Firefox 14 für Entwickler
- Firefox 13 für Entwickler
- Firefox 12 für Entwickler
- Firefox 11 für Entwickler
- Firefox 10 für Entwickler
- Firefox 9 für Entwickler