Firefox 15 für Entwickler
Firefox 15 wurde am 28. August 2012 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
HTML
- Das
size
Attribut des<font>
Elements wird jetzt gemäß der HTML5-Spezifikation behandelt. Das bedeutet, dass alle ganzzahligen Werte größer als 10 oder kleiner als -10 jetzt als gleichwertig zu 10 bzw. -10 angesehen werden. - Die 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 nun für Audio in Ogg-Containern für die HTML
<audio>
und<video>
Elemente unterstützt. - Das
<source>
Element unterstützt nun dasmedia
Attribut. - Die
<audio>
und<video>
Elemente unterstützen nun dasplayed
Attribut, das einTimeRanges
Objekt bereitstellt, das die Zeitbereiche auflistet, die bisher wiedergegeben wurden.
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 Eigenschaften wurden ohne Präfixe versehen. (bug 713643) - Die
skew()
transform
Funktion, die in Firefox 14 entfernt wurde, wurde aufgrund von Kompatibilitätsproblemen mit existierenden Seiten wiederhergestellt. Autoren wird jedoch empfohlen, stattdessen dieskewX()
undskewY()
Funktionen zu verwenden. - Der
plaintext
Wert 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 erlauben, den Zustand von Modifikatortasten wieCtrl
oderShift
abzufragen, wurden implementiert (Bugs 630811 und 731878). Das Verhalten entspricht jedoch dem neuesten D3E-Entwurf. Daher unterscheiden sich einige Modifikatortastennamen von IE (Firefox bug 769190). - Bei Mausereignissen wurde die Unterstützung für das Abfragen des Zustands der Maustasten über das
MouseEvent.buttons
Attribut implementiert. - Bei Tastaturereignissen wurde die Unterstützung für das Abfragen der Tastenposition (Standard, links oder rechts der Modifikatortaste, im Nummernfeld) über das KeyboardEvent.location Attribut implementiert (Firefox bug 166240).
- Das Ergebnis von KeyboardEvent.keycode wurde nach besseren Regeln berechnet, die auf Windows/Linux/Mac fast gleich waren. Und sie sind jetzt auf einigen Tastaturlayouts verfügbar, die keine ASCII-fähigen Layouts auf Linux und Mac sind, wie Arabisch, Kyrillisch, Thailändisch usw. siehe das Dokument für virtuelle Tastencodes.
- Die
range.detach()
Methode wurde in eine Operation, die nichts tut, umgewandelt und wird wahrscheinlich in Zukunft entfernt. - Die Methode
HTMLVideoElement.mozHasAudio()
wurde implementiert. Sie zeigt an, ob ein Audio-Track mit einem bestimmten Videoelement verknüpft ist. (bug 480376) - Die
Performance
API hat eine neue Methode,now()
, die Hochfrequenz-Timer des TypsDOMHighResTimeStamp
unterstützt. (bug 539095) - Die WebSMS API wurde aktualisiert und unterstützt nun ein
read
Attribut, das anzeigt, ob eine SMS-Nachricht gelesen oder ungelesen ist. - Die FileHandle API wurde implementiert.
- Der
Blob
Konstruktor nimmt jetztArrayBufferView
als Element desblobParts
Parameters zusätzlich zuArrayBuffer
. (bug 752402) - Das
DeviceLightEvent
, das im Ambient Light Events Working Draft spezifiziert wurde, wurde implementiert. - Die
DeviceProximityEvent
undUserProximityEvent
Nähe-Ereignisse wurden implementiert. - Die
File
lastModifiedDate
Eigenschaft wurde implementiert. (Firefox bug 673586)
JavaScript
- Unterstützung für die
DataView
Schnittstelle aus der Typed Arrays Spezifikation wurde hinzugefügt. Dies bietet einen niedrigen Zugriff auf die Daten, die in einemArrayBuffer
gespeichert 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 Standardparameter wurde hinzugefügt. (bug 757676).
- Unterstützung für ECMAScript 2015 Restparameter wurde hinzugefügt. (bug 574132).
WebGL
- Unterstützung für die
WEBGL_compressed_texture_s3tc
Erweiterung wurde hinzugefügt. Komprimierte Texturen reduzieren die Menge an Speicher, die benötigt wird, um eine Textur auf der GPU zu speichern, was höhere Auflösungen von Texturen oder mehr Texturen der gleichen Auflösung ermöglicht.
MathML
- Mathematische Operatoren können jetzt herunterladbare Schriften verwenden, die mit
@font-face
spezifiziert sind. Das macht das MathML-fonts Add-on auch mit dehnbaren Operatoren funktional. - Das
selection
Attribut des<maction>
wird jetzt nur im Zusammenhang mit dertoggle
Aktionstyp berücksichtigt. - Veraltete NamedSpace-Bindung wurde entfernt (Firefox bug 673759).
- Unterstützte Syntax für Längen und
<mpadded>
Werte wurde der Spezifikation in MathML3 angenähert. - Neue MathML spiegelbare Operatoren für arabische Mathematik wurden dem Operator-Lexikon hinzugefügt (Firefox bug 757125).
SVG
- Unterstützung für das
<view>
Element wurde hinzugefügt (Firefox bug 512525).
Netzwerk
- Unterstützung für das SPDY v3 Protokoll wurde hinzugefügt. Es ist standardmäßig deaktiviert und kann aktiviert werden, indem die Einstellung
network.http.spdy.enabled.v3
auf wahr gesetzt wird. (bug 737470)
Änderungen für Add-on und Mozilla-Entwickler
Schnittstellenänderungen
nsIDOMWindowUtils
-
aModifiers
vonsendMouseEvent()
,sendTouchEvent()
,sendMouseEventToWindow()
,sendMouseScrollEvent()
undsendKeyEvent()
unterstützt alle Modifikatortasten, die vonKeyboardEvent.getModifierState()
unterstützt werden. Verwenden SieMODIFIER_*
Werte. Und jetzt wurde der 5. Parameter vonsendKeyEvent()
vonboolean
zuunsigned long
geändert. Aus Gründen der Abwärtskompatibilität bleibt das Verhalten unverändert, wenn der Aufrufertrue
oderfalse
übergibt. Diese Änderung ermöglicht es den Aufrufern, den Standort des Schlüssels anzugeben. nsIBrowserHistory
-
Die Methode
hidePage()
wurde nie implementiert und in dieser Version vollständig entfernt. Die MethodeaddPageWithDetails()
wurde ebenfalls entfernt, als Teil der laufenden Arbeit, um alle 'Places APIs' asynchron zu machen; verwenden Sie stattdessenmozIAsyncHistory.updatePlaces()
. Außerdem wurde dascount
Attribut entfernt; es hatte seit einiger Zeit keine tatsächliche Zählung mehr zurückgegeben (stattdessen wurde angezeigt, ob Einträge vorhanden sind oder nicht). Sie könnennsINavHistoryService.hasHistoryEntries
verwenden. nsIDOMUtils
-
Die Methode
nsIDOMUtils.parseStyleSheet()
wurde hinzugefügt und ermöglicht das (erneute) Parsen von Cascading Style Sheets. nsIINIParserWriter
-
Die Methode
nsIINIParserWriter.writeFile()
akzeptiert nun eineflags
Eigenschaft. Dies bietet derzeit nur eine Option: Sie können jetzt festlegen, dass die Datei im UTF-16 Format anstelle von UTF-8 geschrieben wird, um die Kompatibilität mit Windows und bestimmten Installationsprogrammen zu verbessern.
Neue Schnittstellen
nsISpeculativeConnect
-
Bietet eine Möglichkeit, dem Netzwerk-Layer einen Hinweis zu geben, dass Sie wahrscheinlich in naher Zukunft eine Verbindung zu einer bestimmten URI öffnen möchten. Dadurch kann der Netzwerk-Layer den manchmal verzögerten Prozess des Öffnens einer neuen Netzwerkverbindung im Voraus beginnen.
Entfernte Schnittstellen
Die folgenden Schnittstellen wurden entfernt.
nsIGlobalHistory
Siehe auch
- Firefox 14 for developers
- Firefox 13 for developers
- Firefox 12 for developers
- Firefox 11 for developers
- Firefox 10 for developers
- Firefox 9 for developers
- Firefox 8 for developers
- Firefox 7 for developers
- Firefox 6 for developers
- Firefox 5 for developers
- Firefox 4 for developers
- Firefox 3.6 for developers
- Firefox 3.5 for developers
- Firefox 3 for developers
- Firefox 2 for developers
- Firefox 1.5 for developers