Firefox 42 für Entwickler
Um die neuesten Entwicklerfunktionen von Firefox zu testen, installieren Sie die Firefox Developer Edition. Firefox 42 wurde am 3. November 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
Entwicklerwerkzeuge
Höhepunkte:
- Fehlerbehebung von Firefox für Android über Wi-Fi
- Konfiguration des Firefox OS Simulators in WebIDE
- CSS-Filter-Voreinstellungen
Alle Devtools-Fehler, die zwischen Firefox 41 und Firefox 42 behoben wurden.
CSS
- Vertikaler
writing-mode
wird nun mit RTL-Skripten unterstützt (Firefox-Fehler 1131451). - Die Werte von
caption-side
sind jetzt relativ zur Tabelle und ändern ihre tatsächliche Bedeutung abhängig von ihremwriting-mode
-Wert Firefox-Fehler 1202993. - Nicht standardisierte Eigenschaften wie
-moz-margin-start
sind nun Aliase ihrer standardisierten Gegenstücke (margin-inline-start
, …). Zuvor war es umgekehrt. Dies betrifft den Wert, der vonCSSStyleDeclaration.cssText
zurückgegeben wird, sowie die Iteration der Eigenschaften in einer Stilregel, die beide die kanonische Form verwenden (Firefox-Fehler 1118103). - Die vorfixierte Version von CSS-Gradienten kann deaktiviert werden, indem die Präferenz
layout.css.prefixes.gradients
auffalse
gesetzt wird. - Mehrere alte Fehler im Verhalten des Zusammenlaufens von
float
und Rand wurden behoben (Firefox-Fehler 478834, Firefox-Fehler 538194 und Firefox-Fehler 451791).
HTML
- Experimentelle Unterstützung für das Attribut
referrer
der<img>
(Firefox-Fehler 1166910),<iframe>
(Firefox-Fehler 1175736),<a>
und<area>
(Firefox-Fehler 1174913) wurde hinzugefügt. Es hat standardmäßig keine Wirkung, danetwork.http.enablePerElementReferrer
standardmäßig auffalse
steht.
JavaScript
- Das
Reflect
-Objekt wurde implementiert (Firefox-Fehler 987514). - Die Implementierung der
Proxy
-handler.ownKeys()
-Falle wurde aktualisiert, um der finalen ES2015-Spezifikation zu entsprechen (Firefox-Fehler 1049662). - Der Aufruf von
Map
,Set
, oderWeakMap
ohnenew
löst jetzt einenTypeError
aus (Firefox-Fehler 1083752).
Schnittstellen/APIs/DOM
DOM & HTML DOM
-
Bilder mit einer
id
werden nicht mehr als Eigenschaft desWindow
Interfaces gelistet:<img id="login">
ist nicht mehr alswindow.login
zugänglich. Dieses Verhalten wurde in Firefox 26 eingeführt und wurde entfernt, um einer späteren Änderung in der Spezifikation zu entsprechen (Firefox-Fehler 959992). -
MouseEvent.offsetX
undMouseEvent.offsetY
wurden hinzugefügt (Firefox-Fehler 69787). -
Das
HTMLInputElement
-Interface wurde experimentell erweitert, um den Upload von Verzeichnissen zu unterstützen (Firefox-Fehler 1164310). Diese vier Mitglieder können über die Einstellung der Präferenzdom.input.dirpicker
auftrue
freigelegt werden:HTMLInputElement.directory
HTMLInputElement.isFilesAndDirectoriesSupported
HTMLInputElement.getFilesAndDirectories()
HTMLInputElement.chooseDirectory()
-
Das
Directory
-Interface wurde experimentell erweitert (Firefox-Fehler 1177688). Die beiden MitgliederDirectory.path
undDirectory.getContents
können über die Einstellung der Präferenzdom.input.dirpicker
auftrue
freigelegt werden. -
Das
HTMLMediaElement.mozSrcObject
wurde inHTMLMediaElement.srcObject
umbenannt (Firefox-Fehler 1175523).
Service Workers
Request.context
wurde entfernt (Firefox-Fehler 1188062).- Das Push API wurde standardmäßig in Firefox für Desktop aktiviert (Firefox-Fehler 1153499), aber nur in den Nightly/Dev Edition/Beta-Kanälen. Es wird in der Release-Version standardmäßig deaktiviert, bis Consumer-UX und Debugging-Funktionen korrekt implementiert sind (Firefox-Fehler 1207875.) Sie können es immer noch aktivieren, indem Sie die Präferenz
dom.push.enabled
inabout:config
aktivieren. - Die Methode
PushManager.hasPermission()
wurde in der Spezifikation veraltet und durch die MethodePushManager.permissionState()
ersetzt. Firefox hat seine Implementierung entsprechend aktualisiert (Firefox-Fehler 1183853.) - Service-Worker-bezogene Ergänzungen zur Notifications API wurden implementiert (Firefox-Fehler 1114554), sind aber in dieser Version deaktiviert.
Web Animations API
Unsere experimentelle Implementierung der Web Animations API wurde erweitert, um Folgendes zu unterstützen:
- Die
AnimationPlayer.playbackRate
-Eigenschaft (Firefox-Fehler 1127380). - Die Schnittstellen
CSSAnimation
undCSSTransition
(Firefox-Fehler 1178186). - Die Methode
Animation.reverse()
(Firefox-Fehler 1150808). - Die
AnimationPlaybackEvent
-Schnittstelle wurde hinzugefügt, undcancel
sowiefinish
werden jetzt aufAnimation
ausgelöst (Firefox-Fehler 1178664).
Web Components
Unsere experimentelle Implementierung des Shadow DOM wurde modifiziert:
- Beim Versuch,
Node.cloneNode()
auf einemShadowRoot
aufzurufen, wird eineDataCloneError
-Ausnahme ausgelöst (Firefox-Fehler 1176757). - Beim Aufrufen von
Document.importNode()
mit einemShadowRoot
als Argument wird jetzt eineNotSupportedError
-DOMException
ausgelöst (Firefox-Fehler 1177914). - Beim Aufrufen von
Document.adoptNode()
mit einemShadowRoot
als Argument wird jetzt eineHierarchyRequestError
-DOMException
ausgelöst (Firefox-Fehler 1177991).
WebGL
- WebGL2
WebGLTransformFeedback
wurde implementiert (Firefox-Fehler 1048724). - Um einen WebGL2-Kontext zu erhalten, verwendet
HTMLCanvasElement.getContext()
jetztwebgl2
stattexperimental-webgl2
(Firefox-Fehler 1187174).
WebRTC
- Der Optionsdatentyp von
RTCPeerConnection.createOffer()
,RTCOfferOptions
, wurde aktualisiert, um enger an die Spezifikation anzunähern. Unter anderem basiert es jetzt auf demRTCOfferAnswerOptions
-Dictionary, das dievoiceActivityDetection
-Option bietet. - Das
RTCAnswerOptions
-Dictionary wurde hinzugefügt. Dies ist der Typ, der für denoptions
-Parameter voncreateAnswer()
verwendet wird. - Der
RTCICECandidatePairStats.mozPriority
wurde inRTCICECandidatePairStats.priority
umbenannt (Firefox-Fehler 1184426).
Neue APIs
- Das
ImageBitmap
-Interface und die MethodenWindow.createImageBitmap()
undWorkerGlobalScope.createImageBitmap()
wurden implementiert. Sie sind in regulären Fensterskripten und in Web-Workern verfügbar und ermöglichen eine effiziente Übertragung von Bildern zwischen Fenster- und Worker-Kontexten (Firefox-Fehler 1044102).
Verschiedenes
- Das
IDBCursorWithValue
-Interface ist jetzt in Web Workern verfügbar (Firefox-Fehler 1188115). - Fehlerereignisse, die in Web Workern gesendet werden, blubbern nicht mehr (Firefox-Fehler 1188141).
- Media Source Extensions (MSE) wurden für alle Websites aktiviert, und nicht mehr für eine spezielle Liste von Seiten (Firefox-Fehler 1185611).
- Die nicht standardisierte und veraltete
Window.mozRequestAnimationFrame()
wurde entfernt (Firefox-Fehler 909154). Verwenden Sie stattdessen die standardisierteWindow.requestAnimationFrame()
. - Sprachausgabe (Text-to-Speech) wurde in Firefox Desktop für Windows implementiert, versteckt hinter der
media.webspeech.synth.enabled
-Einstellung inabout:config
(Firefox-Fehler 1003457.) Weitere Informationen finden Sie in der Web Speech API.
MathML
Keine Änderungen.
SVG
Keine Änderungen.
Audio/Video
Keine Änderungen.
HTTP
- Firefox 41 und frühere Versionen akzeptierten fälschlicherweise undefinierte oder ungültige Pseudo-Header-Felder in HTTP/2-Antworten. Dies ist nun behoben, und das einzige Pseudo-Header-Feld, das ab Firefox 42 akzeptiert wird, ist das :status gemäß der Spezifikation. Antwort-Header, die willkürliche Felder enthalten, werden als fehlerhaft betrachtet (Firefox-Fehler 1136727).
Netzwerk
- Die CSP-Direktive
upgrade-insecure-requests
wurde implementiert (Firefox-Fehler 1139297).
Sicherheit
- EV-Zertifikate mit einer Gültigkeit von mehr als 39 Monaten werden nun als DV-Zertifikate betrachtet und behandelt (Firefox-Fehler 1145679).
Änderungen für Add-on- und Mozilla-Entwickler
Schnittstellen
nsIContentPolicy
- Die Konstante
TYPE_EMBED
wurde zunsIContentPolicy
hinzugefügt, um Gecko-Internals und Add-on-Codes eine bessere Unterscheidung verschiedener Anfragetypen zu ermöglichen. Zuvor wurdeTYPE_OBJECT
für diese Fälle verwendet (Firefox-Fehler 1148030). - Ebenso wurde die Konstante
TYPE_SUBDOCUMENT
inTYPE_FRAME
undTYPE_IFRAME
aufgeteilt (Firefox-Fehler 1148044).
XUL
Keine Änderungen.
JavaScript-Code-Module
Keine Änderungen.
XPCOM
Keine Änderungen.
Sonstiges
Keine Änderungen.
Ältere Versionen
- Firefox 41 for developers
- Firefox 40 for developers
- Firefox 39 for developers
- Firefox 38 for developers
- Firefox 37 for developers
- Firefox 36 for developers
- Firefox 35 for developers
- Firefox 34 for developers
- Firefox 33 for developers
- Firefox 32 for developers
- Firefox 31 for developers
- Firefox 30 for developers
- Firefox 29 for developers
- Firefox 28 for developers
- Firefox 27 for developers
- Firefox 26 for developers
- Firefox 25 for developers
- Firefox 24 for developers
- Firefox 23 for developers
- Firefox 22 for developers
- Firefox 21 for developers
- Firefox 20 for developers
- Firefox 19 for developers
- Firefox 18 for developers
- Firefox 17 for developers
- Firefox 16 for developers
- Firefox 15 for developers
- Firefox 14 for developers
- Firefox 13 for developers
- Firefox 12 for developers
- Firefox 11 for developers