Firefox 22 – Versionshinweise für Entwickler
Firefox 22 wurde am 25. Juni 2013 veröffentlicht. Dieser Artikel führt wichtige Änderungen auf, die nicht nur für Webentwickler, sondern auch für Firefox- und Gecko-Entwickler sowie für Add-on-Entwickler nützlich sind.
Änderungen für Webentwickler
>HTML
- Das HTML5-Element
<data>wurde implementiert (Firefox-Bug 839371). - Das HTML5-Element
<time>wurde implementiert (Firefox-Bug 629801). - Der Zustand
rangedes Elements<input>(<input type="range">) wurde implementiert. Er ist von der Einstellungdom.experimental_forms_rangeabhängig, die standardmäßig nur in den Nightly- und Aurora-Kanälen aktiviert ist (Firefox-Bug 841948). - Die Unterstützung für das Element
<template>, das Teil der Web-Components-Spezifikation ist, wurde implementiert (Firefox-Bug 818976).
JavaScript
- Asm.js-Optimierungen sind aktiviert. Dadurch können C/C++-Anwendungen für eine Teilmenge von JavaScript kompiliert werden, um eine bessere Leistung zu erzielen.
- Die Syntax für Pfeilfunktionen aus ES2015 wurde implementiert (Firefox-Bug 846406).
- Die neue Funktion Object.is wurde hinzugefügt (Firefox-Bug 839979).
argumentsin Generatorausdrücken wird jetzt aus dem umgebenden lexikalischen Gültigkeitsbereich übernommen (Firefox-Bug 848051).- Der ES2015-Proxy-Trap
preventExtensionswurde implementiert (Firefox-Bug 789897).
DOM
- Die Unterstützung für die Eigenschaft
multipartvonXMLHttpRequestund fürmultipart/x-mixed-replace-Antworten inXMLHttpRequestwurde entfernt. Dies war eine Gecko-spezifische Funktion, die nie standardisiert wurde. Stattdessen können Server-Sent Events, WebSockets oder die Auswertung vonresponseTextbei Fortschrittsereignissen verwendet werden. - Die Unterstützung für Webbenachrichtigungen wurde integriert (Firefox-Bug 782211).
- Die Methode
appendvonFormDataakzeptiert jetzt einen dritten, optionalen Parameterfilename(Firefox-Bug 690659). Node.isSupportedwurde entfernt (Firefox-Bug 801562).Node.setUserDataundNode.getUserDatawurden für Webinhalte entfernt und sind für Chrome-Inhalte veraltet (Firefox-Bug 842372).- Die Eigenschaft
Element.attributeswurde entsprechend der Spezifikation vonNodenachElementverschoben (Firefox-Bug 844134). - Das Mac-OS-X-Backend für Umgebungslicht-Ereignisse wurde implementiert.
- Elemente im HTML-Namensraum mit den lokalen Namen
<bgsound>,<multicol>und<image>implementieren die SchnittstelleHTMLSpanElementnicht mehr.<bgsound>implementiertHTMLUnknownElementund<image>implementiertHTMLElement. - Die Methode
NodeIterator.detachwurde so geändert, dass sie keine Wirkung mehr hat (Firefox-Bug 823549). - Die Schnittstelle
BlobEventwurde implementiert (Firefox-Bug 834165). - Die Eigenschaften
HTMLMediaElement.crossoriginundHTMLInputElement.inputmodewurden entfernt, um der Spezifikation zu entsprechen. Verwenden Sie stattdessenHTMLMediaElement.crossOriginbeziehungsweiseHTMLInputElement.inputMode(Firefox-Bug 847370 und Firefox-Bug 850346). - WebRTC: Die Media Stream API und die Peer Connection API werden jetzt standardmäßig unterstützt.
- Web Components: Die Methode
Document.register()wurde implementiert (Firefox-Bug 783129). - Die Konstruktormethode
ProgressEvent.initProgressEvent()wurde entfernt. Verwenden Sie den StandardkonstruktorProgressEvent(), um einProgressEventzu erstellen und zu initialisieren (Firefox-Bug 843489). - Auf Daten, die mit einem
cut-,copy- oderpaste-Ereignis verarbeitet werden, kann jetzt über die EigenschaftClipboardEvent.clipboardDatazugegriffen werden (Firefox-Bug 407983). - Die Schnittstelle
HTMLTimeElementwurde implementiert (Firefox-Bug 629801). - Wenn dem Konstruktor
Workereine ungültige URL übergeben wird, löst er jetzt eineDOMExceptionvom TypSECURITY_ERRaus (Firefox-Bug 587251).
CSS
- Die Unterstützung für das CSS-Flexbox-Layout ist standardmäßig aktiviert (Firefox-Bug 841876).
- Aufgrund einer Änderung der Spezifikation wurde der Anfangswert von
min-widthundmin-heightwieder auf0gesetzt, auch für Flex-Elemente (Firefox-Bug 848539). - Die Unterstützung für CSS-Bedingungen (
@supportsundCSS.supports()) ist standardmäßig aktiviert (Firefox-Bug 855455). - Die Unterstützung für die Eigenschaften
background-clipundbackground-originin der Kurzschreibweisebackgroundwurde implementiert (Firefox-Bug 570896).
Änderungen für Add-on- und Mozilla-Entwickler
- Der Parameter
propertieswurde aus den MethodennsITreeView.getCellProperties(),nsITreeView.getColumnProperties()undnsITreeView.getRowProperties()vonnsITreeViewentfernt. Diese Methoden sollen jetzt eine Zeichenfolge mit durch Leerzeichen getrennten Eigenschaftsnamen zurückgeben (Firefox-Bug 407956). - Die Methode
inIDOMUtils.getCSSPropertyNames()wurde implementiert und gibt die Namen aller unterstützten CSS-Eigenschaften zurück. - Weitere Änderungen finden Sie im Mozilla-Blog.
Firefox-Entwicklerwerkzeuge
- Der Schriftarten-Inspektor zeigt an, welche Schriftarten Ihres Computers auf der Seite verwendet werden.
- Der Modus für visuelles Zeichnungsfeedback zeigt an, wann und wo eine Seite neu gezeichnet wird.
- Die Entwicklerwerkzeuge können jetzt auch an der rechten Seite des Browsers angedockt werden, nicht mehr nur am unteren Rand.
- Einige Bereiche der Entwicklerwerkzeuge wurden von XUL auf HTML umgestellt. Beispielsweise befindet sich die Ansicht für CSS-Regeln jetzt unter chrome://browser/content/devtools/cssruleview.xhtml statt unter
cssruleview.xul. Anstatt direkt ein Overlay hinzuzufügen, um die Funktionen dieser Bereiche zu erweitern, können Sie dem äußeren XUL-Dokument ein Overlay und ein Skript hinzufügen, um Load-Listener zu registrieren und diese HTML-Dokumente zu ändern. - Der Stacktrace wird jetzt oben als Navigationspfad angezeigt. Die Skriptliste befindet sich jetzt im linken Bereich des Debuggers.