Firefox 20 Versionshinweise für Entwickler
Firefox 20 wurde am 2. April 2013 veröffentlicht. In diesem Artikel finden Sie Informationen über die Änderungen in dieser Version, die Entwickler betreffen werden.
Änderungen für Webentwickler
>HTML
- Unterstützung für das
download-Attribut auf dem<a>und<area>Element wurde hinzugefügt (Firefox Fehler 676619). - Der Wert
autofür das globale Attributdirwurde implementiert (Firefox Fehler 548206). - Das globale Attribut
contextmenufunktioniert nun auch auf Firefox für Android (Firefox Fehler 736321).
JavaScript
- Unterstützung für die Methode
WeakMap.prototype.clear(), die kürzlich zum Harmony (ECMAScript 2015) Entwurfsvorschlag hinzugefügt wurde (Firefox Fehler 814562). - Unterstützung für die Methode
Math.imul(), eine C-ähnliche 32-Bit-Multiplikationsfunktion. Obwohl vorgeschlagen für Harmony (ECMAScript 2015), wurde sie noch nicht akzeptiert und ist weiterhin nicht standardisiert (Firefox Fehler 808148). - Web-Apps, die ziehbaren Text mit Kinetic 3.x verwenden, funktionieren auch beim Einsatz des Cairo-Canvas-Backends (Firefox Fehler 835064).
- Die Anweisung
for each...inwurde als veraltet markiert und sollte nicht mehr verwendet werden. Verwenden Sie stattdessen die neuefor...of-Anweisung (Firefox Fehler 804834). - Unterstützung für
Map.prototype.keys(),Map.prototype.values()undMap.prototype.entries()wurde hinzugefügt (Firefox Fehler 817368).
CSS
- CSS Flexbox ist jetzt standardmäßig in Vorabversionen verfügbar (Beta-Versionen ausgenommen). Es kann in Release- und Beta-Versionen aktiviert werden, indem die
layout.css.flexbox.enabled-Einstellung in about:config auftruegesetzt wird. - Die Eigenschaft
mask-typewurde hinzugefügt (Firefox Fehler 793617). - Experimentelle Unterstützung für die
:scopePseudoklasse wurde hinzugefügt. Standardmäßig in Aurora und Nightly aktiviert, kann sie in Release- und Beta-Versionen aktiviert werden, indem dielayout.css.scope-pseudo.enabled-Einstellung in about:config auftruegesetzt wird (Firefox Fehler 648722).
DOM/APIs
HTMLMediaElementunterstützt jetztplaybackRate(sowohl Lese- als auch Schreibzugriff), mit Tonhöhenkorrektur. Die Tonhöhenkorrektur kann mit der EigenschaftmozPreservesPitchgesteuert werden (Firefox Fehler 495040).- CSSOM: Unterstützung für die neuen
CSSGroupingRuleundCSSConditionRulewurde hinzugefügt (Firefox Fehler 814907). - CSSOM: Bei
CSSRulewurden die Konstanten CSSRule.MOZ_KEYFRAME_RULE und CSSRule.MOZ_KEYFRAMES_RULE zu CSSRule.KEYFRAME_RULE und CSSRule.KEYFRAMES_RULE ohne Präfix geändert. Die Version mit Präfix wird vorübergehend beibehalten, um Webautoren beim Übergang ihres Codes zu unterstützen (Firefox Fehler 816431). - CSSOM: Es ist jetzt möglich, den Wert von
conditionTextfürCSSMediaRulezu setzen (Firefox Fehler 815021). - Die Methoden
parseFromStreamundparseFromBuffervonDOMParsersind nicht mehr aus Webinhalten verfügbar (Firefox Fehler 816410). - Die Methode
serializeToStreamvonXMLSerializerist nicht mehr aus Webinhalten verfügbar (Firefox Fehler 816410). TextDecoderundTextEncoderSchnittstellen sind jetzt in Workern verfügbar (Firefox Fehler 795542).- Unterstützung für die Methode
CSS.supports()wurde hinzugefügt, hinter derlayout.css.supports-rule.enabledEinstellung (standardmäßig deaktiviert) (Firefox Fehler 779917). - Unterstützung für UndoManager wurde hinzugefügt (Firefox Fehler 617532).
- Die CSSOM-Methode
Document.caretPositionFromPoint(), die eineCaretPositionzurückgibt, wurde implementiert. - Das Index-Argument der Methoden
HTMLTableRowElement.insertCell()undHTMLTableElement.insertRow()wurde gemäß der HTML-Spezifikation optional gemacht. Navigator.getUserMedia, immer noch mit Präfix alsNavigator.mozGetUserMedia, ist jetzt standardmäßig aktiviert.- Das dritte, optionale
transferArgument vonWindow.postMessagewird jetzt unterstützt. Diese erlaubt das Übertragen einer Sequenz von transferable objects an das Ziel (Firefox Fehler 822094). - Die nicht standardisierte Methode
Window.sizeToContent()begrenzt jetzt die minimale Größe: Das Fenster kann nicht mehr auf kleine Größen gezwungen werden, die den Benutzer daran hindern, damit zu interagieren (Firefox Fehler 764240). - Mischmodi, wie
overlay,color-burn,hueusw., wurden zu der Canvas-EigenschaftCanvasRenderingContext2D.globalCompositeOperationhinzugefügt (Firefox Fehler 748433). - Die Version mit Präfix von
window.indexedDB—window.mozIndexedDB— wurde in Gecko wieder eingeführt, damit schlechter Cross-Browser-Präfix-Code (wievar indexedDB = window.indexedDB || window.webkitIndexedDB …) nicht in Firefox fehlschlägt. Ein besserer Ansatz istwindow.indexedDB = window.indexedDB || window.webkitIndexedDB …(siehe Firefox Fehler 770844.)
SVG
- Die Implementierung der Eigenschaften
contentScriptTypeundcontentStyleTypewurde vonSVGSVGElemententfernt, zusammen mit der Entfernung aus SVG2 (Firefox Fehler 819731).
MathML
- Um MathML-Autoren beim Debuggen von "ungültigen Markup"-Fehlern in ihren Dokumenten zu helfen, werden jetzt MathML-Parsingfehler (wie zu viele / zu wenige Kind-Elemente) und Warnungen über veraltete Attribute oder falsche Attributwerte in der Fehlerkonsole gemeldet.
- Das Attribut
scriptminsizeakzeptiert jetzt werteinheitenfreie Werte und Prozentwerte. Diese werden als Vielfache des Standardwerts (8pt) interpretiert. - Wundheightsfreie Werte sind jetzt auch für die Attribute
mathsizeundfontsizeerlaubt; sie multiplizieren den Standardwert.
Änderungen für Add-on- und Mozilla-Entwickler
- ECMAScript for XML (E4X) ist jetzt vollständig für alle Chrome- und Inhaltsskripte deaktiviert. Es war zuvor für Inhalte in Firefox 17 deaktiviert und wurde vollständig für Firefox 21 entfernt. Verwenden Sie stattdessen DOMParser/DOMSerializer oder einen nicht-nativen JXON-Algorithmus.
- Die
nsIDOMParserJSSchnittstelle existiert nicht mehr (Firefox Fehler 816410). SiehensIDOMParserfür Alternativen. - Inhaltspräferenzen: Die
nsIContentPrefServiceSchnittstelle ist jetzt veraltet und die asynchronensIContentPrefService2Speicher-API wurde implementiert. - Die
nsIProfileundnsIProfileChangeStatusSchnittstellen wurden entfernt, zusammen mit anderem Code, der das Pre-Firefox Profilverwaltungssystem unterstützte. Sie haben diese Schnittstellen wahrscheinlich nicht verwendet, aber wenn ja, sollten Sie damit aufhören. Dies verhindert, dass nicht funktionierende Teile des Profilverwaltungssystems den Abschaltprozess blockieren. - Die
nsIEventSourceSchnittstelle existiert nicht mehr (Firefox Fehler 819639).