Firefox 17 Versionshinweise für Entwickler
Firefox 17 wurde am 20. November 2012 veröffentlicht. Dieser Artikel listet die wichtigsten Ä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
- Unterstützung für das
sandbox-Attribut auf dem<iframe>-Element wurde hinzugefügt. (Firefox Fehler 341604)
CSS
- Unterstützung für die
@supportsAt-Regel, definiert im CSS Conditional Rules Module Level 3, wurde hinzugefügt. Sie ist standardmäßig deaktiviert. Entwickler können sie ausprobieren, indem sielayout.css.supports-rule.enabledauf true setzen (Fehler 649740). - Unterstützung für die Pseudo-Klasse
:dir()aus CSS Selectors Level 4, die es ermöglicht, Elemente basierend auf ihrer Richtung auszuwählen, wurde hinzugefügt. (Fehler 562169) - Unterstützung für den neu definierten Wert
isolate-overridedes CSSunicode-bidi-Wertes wurde hinzugefügt (Firefox Fehler 774335) - Unsere implementierte Präfix-Version von
box-sizingberücksichtigt nunmin-heightundmax-height. Ein Schritt näher an der Entfernung des Präfixes (Firefox Fehler 308801)
DOM/APIs
- Unterstützung für das
CSSSupportsRule-Interface, definiert in der CSS3-Conditional-Rules-Spezifikation, wurde hinzugefügt (Firefox Fehler 649740). - Unterstützung für das
WheelEvent-Objekt und daswheel-Ereignis wurde hinzugefügt (Firefox Fehler 719320). - Unterstützung für die DOM Meta-Taste auf Linux wurde erneut hinzugefügt (Firefox Fehler 751749).
- Auf dem
HTMLMediaElementwurde eine neue MethodemozGetMetadataeingeführt, die ein JavaScript-Objekt zurückgibt, dessen Eigenschaften die Metadaten der abspielenden Medienressource als {key: value}-Paare darstellen (Firefox Fehler 763010). - Unterstützung für
Range.intersectsNodewurde erneut hinzugefügt; sie wurde in Gecko 1.9 entfernt (Firefox Fehler 579638). Range.compareBoundaryPoints()führt nun eineDOMExceptionmit dem WertNOT_SUPPORTED_ERRaus, wenn die Vergleichsmethode ungültig ist (Firefox Fehler 714279).Event.initEvent()wurde an die Spezifikation angepasst: es wirft keinen Fehler mehr, wenn es nach der Auslösung des Ereignisses aufgerufen wird; es ist nur noch eine Leeroperation (Firefox Fehler 768310).- Die nicht standardmäßige Eigenschaft
XMLHttpRequest.onuploadrequestwurde entfernt (Firefox Fehler 761278). - Die Methode
XMLHttpRequest.getAllResponseHeaders()trennt sie jetzt mit einem CRLF (anstatt eines LF), wie von der Spezifikation gefordert (Firefox Fehler 730925).
JavaScript
- Das
String-Objekt bietet nun die Harmony-MethodenstartsWith,endsWithundcontains(Firefox Fehler 772733). - Die String-Methoden
link()undanchor()entkommen nun dem'"'(Anführungszeichen) (Firefox Fehler 352437). - Experimentelle Unterstützung für das
ParallelArray-Objekt wurde implementiert (Firefox Fehler 778559). - Unterstützung zur Iteration von
Map/Set(Firefox Fehler 725909). - ECMAScript für XML (E4X), eine aufgegebene JavaScript-Erweiterung, wurde standardmäßig für Webinhalte deaktiviert (Firefox Fehler 778851).
__exposedProps__muss nun für Chrome-JavaScript-Objekte, die auf Inhalte zugreifen, gesetzt werden. Versuche, Chrome-Objekte ohne gesetztes__exposedProps__aus den Inhalten zuzugreifen, schlagen fehl, ohne einen Fehler anzuzeigen (Firefox Fehler 553102).for...of-Schleifen funktionieren jetzt anhand von.iterator()und.next()(Firefox Fehler 725907).
WebGL
- Die
EXT_texture_filter_anisotropicWebGL-Erweiterung ist jetzt unpräfixiert. Die Verwendung von"MOZ_EXT_texture_filter_anisotropic"wird nun eine Warnung auslösen. Der präfixierte Name wird in einer zukünftigen Version entfernt (Firefox Fehler 776001).
SVG
Keine Änderung.
MathML
- Das Parsen des
align-Attributs auf<mtable>-Elementen wurde aktualisiert, um optionale Leerzeichen korrekter zu behandeln.
XUL
- Das XUL
key-Element unterstützt den „os“-Modifikator, also die Win-Taste (Super- oder Hyper-Taste) (Firefox Fehler 778732).
Netzwerk
- Die nicht-standardmäßige Funktion
XMLHttpRequest.onuploadprogress, die in Firefox 14 veraltet wurde, wurde entfernt.
Keine Änderung.
Entwicklerwerkzeuge
- Die $-Hilfsfunktion von JSTerm wurde von getElementById in querySelector() geändert (Firefox Fehler 751749).
User Agent
Der Gecko-Teil des User-Agent-Strings wurde geändert. Das Build-Datum (das seit 2010 nicht aktualisiert wurde) wurde entfernt und stattdessen die Gecko-Versionsnummer hinzugefügt. So wurde aus Gecko/20100101 -> Gecko/17.0. Dies könnte Auswirkungen haben, wenn Sie eine User-Agent-Erkennung durchführen.
Änderungen für Add-On- und Mozilla-Entwickler
>Schnittstellenänderungen
nsIInputStream-
Die Methode
available()gibt eine 64-Bit Länge anstelle einer 32-Bit Länge zurück (Firefox Fehler 215450). nsIDOMWindowUtils-
Die Methode
sendMouseScrollEvent()wurde durchsendWheelEvent()ersetzt (Firefox Fehler 719320). nsIFilePicker-
Die Methode
open(), um den Dateidialog asynchron zu öffnen, wurde hinzugefügt und die Methodeshow()wurde als veraltet markiert (Firefox Fehler 731307). nsIScriptSecurityManager-
Die Methoden
checkLoadURIStr()undcheckLoadURI()wurden entfernt (Firefox Fehler 327244). nsIRefreshURI-
Der Methode
setupRefreshURIFromHeader()wurde einprincipalParameter hinzugefügt (Firefox Fehler 327244).
Neue Schnittstellen
Keine.
Entfernte Schnittstellen
Keine entfernt.