Firefox 15 für Entwickler
Firefox 15 wurde am 28. August 2012 veröffentlicht. Dieser Artikel listet die wesentlichen Änderungen auf, die nicht nur für Webentwickler, sondern auch für Entwickler, die mit Firefox und Gecko arbeiten, sowie für Add-on-Entwickler nützlich sind.
Änderungen für Webentwickler
HTML
- Das
size
Attribut des<font>
Elements wird nun gemäß der HTML5-Spezifikation behandelt. Das bedeutet, dass alle ganzzahligen Werte größer als 10 oder kleiner als -10 nun als gleichwertig mit 10 bzw. -10 angesehen werden. - Unterstützung für die
font-weight
undpoint-size
Attribute auf dem<font>
Element wurde entfernt; diese waren nicht standardisiert und Gecko war die einzige Engine, die sie unterstützte. - Der Opus Codec wird jetzt für Audio in Ogg-Containern für die HTML
<audio>
und<video>
Elemente unterstützt. - Das
<source>
Element unterstützt jetzt dasmedia
Attribut. - Die
<audio>
und<video>
Elemente unterstützen jetzt das played Attribut, welches einTimeRanges
Objekt bereitstellt, das die Zeitbereiche der bereits abgespielten Inhalte auflistet.
CSS
- Die
font-feature-settings
Eigenschaft wurde auf die neueste Syntax aktualisiert:font-feature-settings: "lnum" 1;
- Die CSS
text-transform
Eigenschaft wurde erweitert, um Unicode-Ligaturzeichen (wiefi
) korrekt zu behandeln. - Die CSS
word-break
Eigenschaft wurde implementiert. - Die
border-image
Eigenschaft wurde aktualisiert, um der neuesten Spezifikation zu entsprechen, und die Präfixe wurden entfernt. (bug 713643) - Die
skew()
transform
Funktion, die in Firefox 14 entfernt wurde, wurde aufgrund von Kompatibilitätsanforderungen für existierende Websites wiederhergestellt. Autoren wird jedoch empfohlen, die FunktionenskewX()
undskewY()
zu verwenden. - Der Wert
plaintext
der CSSunicode-bidi
Eigenschaft gilt jetzt auch für Inline-Elemente. (Firefox bug 746987).
DOM
- Die DOM-Events Level 3 Methoden
KeyboardEvent.getModifierState()
undMouseEvent.getModifierState()
, die es ermöglichen, den Zustand von Modifikatortasten wieCtrl
oderShift
abzufragen, wurden implementiert (Bugs 630811 und 731878). Das Verhalten entspricht jedoch dem neuesten D3E-Entwurf. Daher weichen einige Modifikatortastennamen von IE ab (Firefox bug 769190). - Bei Mausereignissen wurde die Unterstützung zur Abfrage des Zustands der Maustasten mit dem
MouseEvent.buttons
Attribut implementiert. - Bei Tastaturereignissen wurde die Unterstützung zur Abfrage der Tastenposition (Standard, links oder rechts von der Modifikatortaste, im Numpad) mit dem KeyboardEvent.location Attribut implementiert (Firefox bug 166240).
- Das Ergebnis von KeyboardEvent.keycode wird nun aus besseren Regeln berechnet, die fast identisch auf Windows/Linux/Mac sind. Und jetzt sind sie auf einigen Tastaturlayouts, die keine ASCII-tauglichen Layouts auf Linux und Mac sind, wie Arabisch, Kyrillisch, Thai usw., verfügbar. Siehe das Dokument für virtuelle Tastencodes.
- Die
range.detach()
Methode wurde in eine No-Op umgewandelt und wird wahrscheinlich in Zukunft entfernt. - Die Methode
HTMLVideoElement.mozHasAudio()
wurde implementiert. Sie zeigt an, ob es einen Audiotrack gibt, der mit einem bestimmten Videoelement verknüpft ist. (bug 480376) - Die
Performance
API hat eine neue Methode,now()
, die hochauflösende Timer des TypsDOMHighResTimeStamp
unterstützt. (bug 539095). - Die WebSMS API wurde aktualisiert und unterstützt jetzt ein
read
Attribut, das angibt, ob eine SMS-Nachricht gelesen oder ungelesen ist. - Die FileHandle API wurde implementiert.
- Der
Blob
Konstruktor akzeptiert jetztArrayBufferView
als ein Mitglied desblobParts
Parameters zusätzlich zuArrayBuffer
. (bug 752402) - Der
DeviceLightEvent
wird gemäß dem Ambient Light Events Working Draft unterstützt. - Die
DeviceProximityEvent
undUserProximityEvent
Proximity Events wurden implementiert. - Die
File
EigenschaftlastModifiedDate
wurde implementiert. (Firefox bug 673586)
JavaScript
- Unterstützung für das
DataView
Interface aus der Typed Arrays Spezifikation wurde hinzugefügt. Dies bietet einen Low-Level-Zugriff auf die Daten, die in einemArrayBuffer
enthalten sind. - Unterstützung für neue ECMAScript 2015 Built-ins:
Number.isNaN()
,Number.toInteger()
,Number.isInteger()
,Number.isFinite()
wurde hinzugefügt. (bug 749818, bug 761495, bug 761480). - Unterstützung für ECMAScript 2015 Default-Parameter wurde hinzugefügt. (bug 757676).
- Unterstützung für ECMAScript 2015 Rest-Parameter wurde hinzugefügt. (bug 574132).
WebGL
- Unterstützung für die
WEBGL_compressed_texture_s3tc
Erweiterung wurde hinzugefügt. Komprimierte Texturen verringern die Menge an Speicher, die benötigt wird, um eine Textur auf der GPU zu speichern, und ermöglichen höhere Auflösungen oder mehr Texturen der gleichen Auflösung.
MathML
- Mathematische Operatoren können jetzt herunterladbare Schriftarten verwenden, die mit
@font-face
angegeben sind. Dadurch funktioniert das MathML-fonts Add-on auch mit dehnbaren Operatoren. - Das
selection
Attribut des<maction>
wird jetzt nur noch mit dem Aktionstyptoggle
berücksichtigt. - Veraltete namedspace-Bindung wurde entfernt (Firefox bug 673759).
- Unterstützte Syntax für Längenangaben und
<mpadded>
Werte wurde der in der MathML3-Spezifikation angegebenen Syntax angenähert. - Neue spiegelbare MathML-Operatoren für Arabische Mathematik wurden dem Operator-Wörterbuch hinzugefügt (Firefox bug 757125).
SVG
- Unterstützung für das
<view>
Element hinzugefügt (Firefox bug 512525).
Netzwerk
- Unterstützung für das SPDY v3 Protokoll wurde hinzugefügt. Es ist standardmäßig deaktiviert und kann durch Setzen der Einstellung
network.http.spdy.enabled.v3
auf true aktiviert werden. (bug 737470)
Änderungen für Add-on- und Mozilla-Entwickler
Schnittstellenänderungen
nsIDOMWindowUtils
-
aModifiers
vonsendMouseEvent()
,sendTouchEvent()
,sendMouseEventToWindow()
,sendMouseScrollEvent()
undsendKeyEvent()
unterstützen alle Modifikatortasten, die vonKeyboardEvent.getModifierState()
unterstützt werden. Verwenden SieMODIFIER_*
Werte. Und jetzt wurde der 5. Parameter vonsendKeyEvent()
vonboolean
zuunsigned long
geändert. Zur Rückwärtskompatibilität ändert sich das Verhalten nicht, wenn der Aufrufertrue
oderfalse
übergibt. Diese Änderung ermöglicht es den Aufrufern, die Position der Taste anzugeben. nsIBrowserHistory
-
Die Methode
hidePage()
wurde nie implementiert und in dieser Version komplett entfernt. Die MethodeaddPageWithDetails()
wurde ebenfalls entfernt, im Rahmen laufender Arbeiten, um alle 'Places APIs' asynchron zu gestalten; verwenden Sie stattdessenmozIAsyncHistory.updatePlaces()
. Außerdem wurde dascount
Attribut entfernt; es gab schon seit einiger Zeit keine tatsächliche Anzahl mehr zurück (es zeigte lediglich an, ob Einträge existierten oder nicht). Sie könnennsINavHistoryService.hasHistoryEntries
verwenden. nsIDOMUtils
-
Die Methode
nsIDOMUtils.parseStyleSheet()
wurde hinzugefügt und ermöglicht das (Neu-)Parsen von Cascading Style Sheets. nsIINIParserWriter
-
Die
nsIINIParserWriter.writeFile()
Methode akzeptiert jetzt eineflags
Eigenschaft. Derzeit bietet diese nur eine Option: Sie können nun angeben, dass die Datei im UTF-16 Format anstelle von UTF-8 geschrieben werden soll, für eine bessere Kompatibilität mit Windows und bestimmten Installationsprogrammen.
Neue Schnittstellen
nsISpeculativeConnect
-
Bietet eine Möglichkeit, dem Netzwerk-Layer zu signalisieren, dass Sie wahrscheinlich in naher Zukunft eine Verbindung zu einer bestimmten URI öffnen möchten. Dies ermöglicht es dem Netzwerk-Layer, den manchmal hochgradig latenten Prozess des Öffnens einer neuen Netzwerkverbindung vorab zu beginnen.
Entfernte Schnittstellen
Die folgenden Schnittstellen wurden entfernt.
nsIGlobalHistory
Siehe auch
- Firefox 14 für Entwickler
- Firefox 13 für Entwickler
- Firefox 12 für Entwickler
- Firefox 11 für Entwickler
- Firefox 10 für Entwickler
- Firefox 9 für Entwickler
- Firefox 8 für Entwickler
- Firefox 7 für Entwickler
- Firefox 6 für Entwickler
- Firefox 5 für Entwickler
- Firefox 4 für Entwickler
- Firefox 3.6 für Entwickler
- Firefox 3.5 für Entwickler
- Firefox 3 für Entwickler
- Firefox 2 für Entwickler
- Firefox 1.5 für Entwickler