Firefox 43 für Entwickler
Um die neuesten Entwicklerfunktionen von Firefox zu testen, installieren Sie Firefox Developer Edition. Firefox 43 wurde am 15. Dezember 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:
- Serverprotokollierung in der Webkonsole
- Schnell die Regel finden, die eine CSS-Deklaration übersteuert hat
- „Im Konsolenkontext verwenden“-Menüpunkt im Inspektor
- "Strikt"-Option zum Filtern in der Regelansicht
- Netzwerkeinträge in der Konsole verlinken nun zum Netzwerkmonitor
- Die Markup-Ansicht zeigt Indikatoren für Pseudo-Klassen, die für Elemente gesperrt sind (setting-hover-active-focus)
- Neue Sidebar-Benutzeroberfläche für WebIDE
Alle Devtools-Bugs, die zwischen Firefox 42 und Firefox 43 behoben wurden.
CSS
- Die Unterstützung für die standardisierte, unpräfixte Version von
hyphens
wurde implementiert (Firefox-Bug 953408). - Die Kurzschreibweiseigenschaft
font
wurde aktualisiert, umfont-stretch
-Werte zu akzeptieren (Firefox-Bug 1057680). - Um der neuesten Entwicklung der Spezifikation zu entsprechen, wählt die Pseudo-Klasse
:fullscreen
nun den gesamten Stapel von Elementen im Vollbild aus und nicht nur das oberste (Firefox-Bug 1199522). - Die veralteten SVG-Werte für
writing-mode
,lr
,lr-tb
,rl
,tb
undtb-rl
wurden in CSS als Aliase zu Standardwerten hinzugefügt (Firefox-Bug 1205787).
HTML
- Für
<img>
mit ICO-Bild, das mehrere Frames enthält, wird die intrinsische Dimension des Bildes auf die des größten Frames festgelegt, und nicht mehr auf die des kleinsten Frames (Firefox-Bug 1201796). - Der Wert des Viewports des Dokuments (definiert mit
<meta name="viewport">
) kann nun dynamisch über JavaScript geändert werden (Firefox-Bug 976616).
JavaScript
Neue APIs
- Die neuen ES2016-Methoden
Array.prototype.includes()
undTypedArray.prototype.includes()
sind jetzt standardmäßig aktiviert (Firefox-Bug 1070767).
Änderungen bezüglich des arguments
-Objekts
- Um die ES2015-Spezifikation zu erfüllen, haben Arrow-Funktionen nicht mehr ihr eigenes
arguments
-Objekt. Dasarguments
-Objekt wird jetzt lexikalisch gebunden (vom äußeren Funktionskontext geerbt). In den meisten Fällen sind Restparameter eine gute Alternative(...args) => args[i]
, siehe Firefox-Bug 889158. - Das arguments-Objekt ist nun in Verbindung mit Restparametern erlaubt (Firefox-Bug 1133298).
- Ab sofort wird ein abgebildetes
arguments
-Objekt in nicht-strikten Funktionen nur bereitgestellt, wenn die Funktion keine Restparameter, Standardparameter oder destrukturierte Parameter enthält (Firefox-Bug 1175394).
Andere Änderungen
- Generatorkonstrukte und Generatormethoden sind gemäß ES2016 nicht mehr konstruierbar (Firefox-Bug 1191486).
Schnittstellen/APIs/DOM
DOM & HTML DOM
Keine Änderung.
IndexedDB
- Ein neues Feature namens Sprachabhängiges Sortieren wurde hinzugefügt, das es ermöglicht, Indizes mit einer angegebenen Sprache zu erstellen, die dann verwendet werden können, um Daten gemäß den Regeln dieser Sprache zu sortieren (Firefox-Bug 871846). Dies ist ein nicht-standardmäßiges, Firefox-spezifisches Feature.
Service Workers
- Gemäß der Spezifikation wirft Firefox nun einen
InvalidStateError
, wennExtendableEvent.waitUntil()
außerhalb desExtendableEvent
-Handlers aufgerufen wird; zudem werden bei mehrfachen Aufrufen vonwaitUntil()
die resultierenden Versprechen zur Liste der Versprechen zur Lebenszeitverlängerung hinzugefügt (Firefox-Bug 1180274). - Die Methoden
PushMessageData
wurden implementiert (Firefox-Bug 1149195).
WebRTC
- Die Methode
HTMLCanvasElement.captureStream()
wurde standardmäßig aktiviert (Firefox-Bug 1177276). - Die nicht-standardmäßige Constraint-Stillistenoption für
RTCOfferOptions
wurde für veraltet erklärt und wird in Firefox 44 vollständig entfernt.
Sonstige
- Die Battery Status API verwendet jetzt die neue Promise-Syntax für
Navigator.getBattery()
, wie in der jüngsten Spezifikationsentwicklung festgelegt (Firefox-Bug 1050749). - Der
User-Agent
-Header gehört nicht mehr zur Liste der verbotenen Anfrage-Header, sodass er nun in einem FetchHeaders
-Objekt, via XHRXMLHttpRequest.setRequestHeader()
gesetzt werden kann, … (Firefox-Bug 1188932). - Der Konstruktor
MediaRecorder()
kann nun ein Optionswörterbuch als Parameter akzeptieren, das es Ihnen ermöglicht, benutzerdefinierte Bitraten für das aufzuzeichnende Audio/Video festzulegen (Firefox-Bug 1161276). - Die Schnittstelle
PerformanceObserver
, die zu den Performance-APIs gehört, wurde implementiert (Firefox-Bug 1165796). - Die Frame-Timing-API wurde hinzugefügt: die Schnittstellen
PerformanceRenderTiming
undPerformanceCompositeTiming
sind nun verfügbar (Firefox-Bug 1191178). - Die moderne Screen Orientation API wurde implementiert: der unpräfixierte
Screen.orientation
und die SchnittstelleScreenOrientation
sind nun verfügbar (Firefox-Bug 1131470). Die nicht-standardmäßigen MethodenScreen.mozOrientation
,Screen.onmozorientationchange
,Screen.mozLockOrientation()
undScreen.mozUnlockOrientation()
werden in Zukunft entfernt. - Unter Linux, wie unter Windows, gibt
Event.timeStamp
nun einenDOMHighResTimeStamp
zurück (Firefox-Bug 1026803). - Experimentelle Unterstützung für
Selection
-Eventsselectionchange
undselectstart
, sowie die Eigenschaften der Event-HandlerDocument.onselectionchange
undHTMLInputElement.onselectstart
wurde hinzugefügt (Firefox-Bug 571294). Dasselectionchange
-Ereignis wird auf demDocument
ausgelöst, wenn das zugehörigeSelection
-Objekt betroffen ist, oder auf dem spezifischenHTMLInputElement
oderHTMLTextAreaElement
(Firefox-Bug 1196479). Diese Funktion wird durch die Voreinstellungdom.select_events.enabled
gesteuert, die standardmäßigfalse
ist, außer in Nightly. - Unterstützung für
MouseEvent.offsetX
undMouseEvent.offsetY
wurde auf Firefox für Android und Firefox OS aktiviert (Firefox-Bug 1204841). - Die Methode
HTMLCanvasElement.mozFetchAsStream()
wurde entfernt (Firefox-Bug 1206030). - Der Konstruktor
Request()
sowiefetch()
werfen nun eineTypeError
-Ausnahme, wenn sie mit einer URL verwendet werden, die einen Benutzernamen und ein Passwort enthält (Firefox-Bug 1195820).
MathML
Keine Änderung.
SVG
Keine Änderung.
Audio/Video
Keine Änderung.
HTTP
Keine Änderung.
Netzwerk
Keine Änderung.
Sicherheit
- Der Zugriff auf Web Storage (d.h.
localStorage
undsessionStorage
) von Drittanbieter-IFrames wird nun verweigert, wenn der Benutzer Drittanbieter-Cookies deaktiviert hat (Firefox-Bug 536509). - Diese Whitelist wurde sogar in den Nightly- und Aurora/Dev-Edition des Browsers entfernt (Firefox-Bug 1201023). Es ist derzeit geplant, dass diese Entfernung auch für Beta- und Release-Versionen in der nächsten Version (Firefox 44) erfolgt.
- Subresource Integrity wurde für
<script>
und<link>
implementiert, die auf Stylesheets verweisen (Firefox-Bug 992096).
Änderungen für Add-on- und Mozilla-Entwickler
Schnittstellen
Keine Änderung.
XUL
Keine Änderung.
JavaScript-Code-Module
Keine Änderung.
XPCOM
Keine Änderung.
Plugins
- Zur Vorbereitung auf zukünftige Versionen, die auf Multi-Prozess-Inhalte umstellen werden, können NPAPI-Plugins nicht mehr im selben Prozess wie die Seiteninhalte ausgeführt werden. Die Präferenzen, die mit
dom.ipc.plugins
beginnen, werden nicht mehr verwendet.
Sonstiges
Keine Änderung.
Ältere Versionen
- Firefox 42 für Entwickler
- Firefox 41 für Entwickler
- Firefox 40 für Entwickler
- 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