Firefox 26 Versionshinweise für Entwickler
Firefox 26 wurde am 10. Dezember 2013 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
>CSS
- Die
text-decoration-line-Eigenschaft, immer noch mit Präfix, betrachtet jetzt'blink'als einen gültigen Wert, obwohl der Inhalt überhaupt nicht blinkt (Firefox-Bug 812995). - Die nicht standardisierte
-moz-text-blink-Eigenschaft wurde entfernt (Firefox-Bug 812995). - Unterstützung für die
image-orientation-Eigenschaft, in ihrer CSS Images & Values Level 4-Version, das heißt mit demfrom-image-Schlüsselwort und EXIF-Unterstützung, wurde hinzugefügt (Firefox-Bug 825771). - Experimentelle Unterstützung für
position: stickywurde implementiert und kann durch Preflayout.css.sticky.enabledaktiviert werden (Firefox-Bug 886646). - Die
text-align-Eigenschaft gilt nun für das::-moz-placeholder-Pseudoelement (Firefox-Bug 915551).
HTML
- Die
HTMLSelectElement.selectedOptions-Eigenschaft wurde implementiert (Firefox-Bug 596681). - Im
<input>-Element des Typsemailwerden Werte mit Domänenbezeichnungen, die länger als 63 Zeichen sind, nicht mehr als gültig angesehen (Firefox-Bug 884332). - Die
HTMLInputElement.width- undheight-Eigenschaften geben jetzt0zurück, wenn dertypenichtimageist (Firefox-Bug 905240). - Ein
<fieldset>-Element ist jetzt ungültig und kann mit der:invalid-Pseudoklasse gestylt werden, wenn eines der enthaltenen Elemente ungültig ist (Firefox-Bug 717181).
JavaScript
Die Implementierung von ECMAScript 2015 geht weiter!
- Die ECMAScript 2015-konforme Syntax für Generatoren (yield) wurde implementiert (Firefox-Bug 666399).
- Generator/Iterator-Ergebnisse sind jetzt in Form von
{ value: foo, done: bool }umschlossen (Firefox-Bug 907744). - Neue mathematische Methoden wurden auf
Mathimplementiert:Math.fround()(Firefox-Bug 900125). - Die reservierten Wörter können nicht mehr für Funktionsnamen verwendet werden: Eine solche Verwendung löst jetzt einen
SyntaxErroraus (Firefox-Bug 907958). - Die Syntax für Standardparameter wurde aktualisiert, um Parameter ohne Standards nach Standardparametern zuzulassen, wie bei
function f(x=1, y). Siehe Firefox-Bug 777060. GeneratorFunctionist implementiert (Firefox-Bug 904701).
Schnittstellen/APIs/DOM
- Der letzte Parameter (doctype) von
DOMImplementation.createDocumentist jetzt optional (Firefox-Bug 909859). - Die neue Spezifikation von
element.classList, die das Hinzufügen/Entfernen mehrerer Klassen mit einem Aufruf ermöglicht, wurde implementiert (Firefox-Bug 814014). - Der
URL()-Konstruktor wurde auf derURL-Schnittstelle implementiert (Firefox-Bug 887364). - Die Eigenschaften
URLUtils.origin,URLUtils.passwordundURLUtils.usernamesind jetzt für alle Schnittstellen verfügbar, die dasURLUtils-Mixin implementieren:URL,Location,HTMLAnchorElementundHTMLAreaElement(Firefox-Bug 887364). - Die
URL-Schnittstelle ist jetzt von Web-Workern aus zugänglich (Firefox-Bug 887364). - IndexedDB kann jetzt als "optimistischer" Speicherbereich genutzt werden, sodass keine Anfragen mehr nötig sind und Daten in einem Pool mit LRU-Auslöserpolitik gespeichert werden, kurzum ein temporärer Speicher (Firefox-Bug 785884).
- Unterstützung für
WaveShaperNode.oversamplewurde hinzugefügt (Firefox-Bug 875277). - Der Pfad für den persistenten Speicher wurde von
<profile>/indexedDBzu<profile>/storage/persistentgeändert (auf b2g von/data/local/indexedDBzu/data/local/storage/persistent). - Die
Screen.orientation-Eigenschaft und dieScreen.lockOrientation()-Methode unterstützen jetzt den Wertdefault, der entwederportrait-primaryoderlandscape-primaryzugeordnet wird, abhängig vom Gerät (Firefox-Bug 908058). Dies funktioniert nur für Firefox OS und Firefox für Android. Firefox Desktop wird nicht unterstützt. Event-Konstruktoren können in Web-Workern verwendet werden (Firefox-Bug 910910).- Der Versuch, die
Document.domain-Eigenschaft auf einer in einem<iframe>eingebetteten Seite mit demsandbox-Attribut zu setzen, wirft nun einen Sicherheitsfehler (Firefox-Bug 907892). - Die
MessageEvent-Schnittstelle wurde aktualisiert, um die neueste Spezifikation zu erfüllen. DieinitMessageEvent-Methode wurde entfernt, während die Schnittstelle jetzt einen Konstruktor hat (Firefox-Bug 848294). - Die HTML5
MessageChannel-API wurde implementiert, hinter derdom.messageChannel.enabled-Einstellung (Firefox-Bug 677638). - Unterstützung für
VTTCue, hinter dermedia.webvtt.enabled-Einstellung, wie für alle WebVTT-bezogenen Implementierungen, wurde hinzugefügt (Firefox-Bug 868509). - Die Web Audio API wurde standardmäßig aktiviert (Firefox-Bug 885505).
MathML
- Inkonsistente Darstellungen von
<mmultiscripts>,<msub>,<msup>und<msubsup>wurden vereinheitlicht und die Fehlerbehandlung dieser Elemente wurde verbessert (Firefox-Bug 827713).
SVG
- Die Einbindung von SVG-Glyphen in OpenType, SVG-in-OpenType, wurde aktualisiert, um der aktuellen Version der Spezifikation zu entsprechen (Firefox-Bug 906521).
- Die
SVGElement.ownerSVGElement()-Methode wirft keinen Fehler mehr (Firefox-Bug 835048).
Entwicklungstools
- Der Inspector ist jetzt remotefähig (Firefox-Bug 805526).
- Der Text der Web-Konsole kann nun ausgewählt werden,
::beforeund::aftersind jetzt inspizierbar, Debugger- und Responsive-Design-Funktionen sind für diese Version geplant. (https://hacks.mozilla.org/2013/09/new-features-in-the-firefox-developer-tools-episode-26/)