Firefox 3.5 für Entwickler
Firefox 3.5 (veröffentlicht am 30. Juni 2009) führt eine Reihe von neuen Funktionen ein und bietet zusätzliche und verbesserte Unterstützung für eine Vielzahl von Webstandards. Dieser Artikel bietet eine umfangreiche Liste mit Links zu Artikeln, die die wichtigsten Verbesserungen behandeln.
Neue Entwickler-Features in Firefox 3.5
Für Website- und Anwendungsentwickler
HTML 5-Unterstützung
- Verwendung von Audio und Video
-
Firefox 3.5 unterstützt die HTML 5-Elemente
audio
undvideo
. - Offline-Ressourcen in Firefox
-
Firefox 3.5 unterstützt jetzt vollständig die HTML 5-Spezifikation für Offline-Ressourcen.
- Drag and Drop
-
Die HTML 5 Drag and Drop-API ermöglicht das Ziehen und Ablegen von Elementen innerhalb und zwischen Websites. Dies bietet auch eine einfachere API für Erweiterungen und auf Mozilla basierende Anwendungen.
Neu unterstützte CSS-Features
- Unterstützung für herunterladbare Schriftarten
-
Die neue
@font-face
@Regel ermöglicht es Webseiten, herunterladbare Schriftarten bereitzustellen, sodass Seiten genau so dargestellt werden können, wie der Autor es erwartet. - CSS-Mediaqueries
-
Firefox 3.5 unterstützt jetzt CSS-Mediaqueries, die die Unterstützung für medienabhängige Stylesheets verbessern.
::before
und::after
aktualisiert auf CSS 2.1-
Die Pseudo-Elemente
::before
und::after
wurden auf volle CSS 2.1-Unterstützung aktualisiert und unterstützen nun die Eigenschaftenposition
,float
,list-style-*
und einigedisplay
-Eigenschaften. ch
-Einheiten für Längen-
Die
ch
-Einheit kann jetzt überall verwendet werden, wo eine Längeneinheit akzeptiert wird.1ch
ist die Breite des Zeichens "0" (Null). opacity
-
Die Mozilla-Erweiterung
-moz-opacity
wurde zugunsten der standardisierten Eigenschaftopacity
entfernt. text-shadow
-
Die Eigenschaft
text-shadow
, die es Webinhalten ermöglicht, Schatteneffekte auf Text und Textdekorationen anzuwenden, wird jetzt unterstützt. overflow-wrap
-
Diese neu unterstützte Eigenschaft ermöglicht es, anzugeben, ob Zeilen innerhalb von Wörtern gebrochen werden dürfen, um Überlauf zu vermeiden, wenn eine ansonsten unbrechbare Zeichenkette zu lang ist, um in eine Zeile zu passen.
white-space
-Eigenschaft unterstützt den Wertpre-line
-
Die
white-space
-Eigenschaft akzeptiert jetzt den Wertpre-line
. -
-moz-box-shadow
-moz-border-image
-moz-column-rule
-moz-column-rule-width
-moz-column-rule-style
-moz-column-rule-color
-
Firefox 3.5 unterstützt diese Mozilla-Erweiterungen zu CSS.
- Der
-moz-nativehyperlinktext
Farbwert -
Dieser neue Farbwert repräsentiert die standardmäßige Hyperlinkfarbe des Benutzer-Systems.
- Die
-moz-window-shadow
-Eigenschaft und die:-moz-system-metric(mac-graphite-theme)
-Pseudo-Klasse -
Diese neuen CSS-Eigenschaften wurden hinzugefügt, um die Gestaltung zu erleichtern.
- Neue Werte für
-moz-appearance
-
Die Werte
-moz-win-glass
und-moz-mac-unified-toolbar
wurden für-moz-appearance
hinzugefügt. - Verwendung von CSS-Transformationen
-
Firefox 3.5 unterstützt CSS-Transformationen. Siehe
-moz-transform
und-moz-transform-origin
für Details. :nth-child
:nth-last-child
:nth-of-type
:nth-last-of-type
:first-of-type
:last-of-type
:only-of-type
-
Diese Selektoren werden alle neu in Firefox 3.5 unterstützt.
Neue DOM-Features
- localStorage
-
Firefox 3.5 unterstützt die Web Storage
localStorage
-Eigenschaft, die Webanwendungen eine Möglichkeit bietet, Daten lokal auf dem Computer des Benutzers zu speichern. - Verwendung von Web Workern
-
Firefox 3.5 unterstützt Web Worker, um die einfache Unterstützung von Multithreading in Webanwendungen zu ermöglichen.
- Verwendung von Geolokalisierung
-
Firefox 3.5 unterstützt die Geolocation-API, die es Webanwendungen ermöglicht, Informationen über den aktuellen Standort des Benutzers zu erhalten, sofern ein Anbieter für diese Informationen installiert und aktiviert ist.
- DOM-Elemente mit Selektoren lokalisieren
-
Die Selektoren-API ermöglicht es, ein Dokument zu durchsuchen, um die Elemente zu finden, die einer gegebenen Auswahlregel entsprechen.
- Mausgestenereignisse
-
Firefox 3.5 unterstützt Mausgestenereignisse wie Trackpad-Wischgesten.
- Das
NodeIterator
-Objekt -
Das
NodeIterator
-Objekt bietet Unterstützung für das Durchlaufen der Liste von Knoten in einem DOM-Unterbaum. - Das
MozAfterPaint
-Ereignis -
Dieses neue DOM-Ereignis wird nach Aktualisierungen der Malerei in Fenstern gesendet.
- Das
MozMousePixelScroll
-Ereignis -
Dieses neue DOM-Ereignis ermöglicht die Erkennung von pixelbasierten Mausrad-Scrollereignissen anstelle von zeilenweisen Scrollereignissen.
Neue JavaScript-Features
- Neu in JavaScript 1.8.1
-
Ein Überblick über alle Änderungen in JavaScript 1.8.1.
Object.getPrototypeOf()
-
Diese neue Methode gibt das Prototyp-Objekt eines angegebenen Objekts zurück.
- Verwendung von nativem JSON
-
Firefox 3.5 unterstützt nativ JSON.
- Neue Trim-Methoden für das String-Objekt
-
Das
String
-Objekt verfügt jetzt über die Methodentrim()
,trimLeft()
undtrimRight()
.
Netzwerkfunktionen
- Cross-Site-Zugriffskontrollen für HTTP
-
In Firefox 3.5 ist es nun möglich, dass HTTP-Anfragen, einschließlich der von
XMLHttpRequest
gestellten, domänenübergreifend funktionieren, wenn der Server dies unterstützt. - Fortschrittsereignisse für
XMLHttpRequest
-
Fortschrittsereignisse werden jetzt angeboten, um Erweiterungen die Überwachung des Fortschritts von Anfragen zu ermöglichen.
- Verbessert Unterstützung für synchronen
XMLHttpRequest
-
DOM-Timeout und Eingabeereignisse werden nun während eines synchronen
XMLHttpRequest
unterdrückt. - Steuerung des DNS-Prefetching
-
Firefox 3.5 bietet DNS-Prefetching, sodass die Domainnamenauflösung im Voraus für Links auf der aktuellen Seite ausgeführt wird, um Zeit zu sparen, wenn Links tatsächlich angeklickt werden. Dieser Artikel beschreibt, wie Sie Ihre Website anpassen können, um Prefetching zu deaktivieren oder die Funktionsweise des Prefetching anzupassen.
Neue Canvas-Features
- HTML 5 Text-API für
canvas
-Elemente -
Canvas-Elemente unterstützen jetzt die HTML 5 Text-API.
- Schatteneffekte in einem
canvas
-
Canvas-Schatteneffekte werden jetzt unterstützt.
createImageData()
-
Die Canvas-Methode
createImageData()
wird jetzt unterstützt, sodass der Code einImageData
-Objekt speziell erstellen kann, anstatt es automatisch zu machen. Dies kann die Leistung andererImageData
-Methoden verbessern, indem verhindert wird, dass sie das Objekt erstellen müssen. moz-opaque
-Attribut-
Das
moz-opaque
-Attribut wurde hinzugefügt, welches im Canvas angibt, ob Transluzenz eine Rolle spielt oder nicht. Wenn das Canvas weiß, dass keine Transluzenz vorhanden ist, kann die Malleistung optimiert werden. Siehe auchHTMLCanvasElement.mozOpaque
.
Neue SVG-Features
- Anwendung von SVG-Effekten auf HTML-Inhalt
-
Sie können jetzt SVG-Effekte auf HTML- und XHTML-Inhalte anwenden; dieser Artikel beschreibt, wie.
Verschiedene neue Features
- ICC-Farbkorrektur in Firefox
-
Firefox 3.5 unterstützt nun ICC-Farbkorrekturen für getaggte Bilder.
- Das
defer
-Attribut wird jetzt aufscript
-Elementen unterstützt -
Dieses Attribut zeigt dem Browser an, dass er möglicherweise fortfahren kann, die Seite zu parsen und darzustellen, ohne darauf zu warten, dass das Skript ausgeführt wird.
Weitere Verbesserungen
- Die Textknoten-Eigenschaft
wholeText
und die MethodeText.replaceWholeText()
wurden implementiert. - Die Eigenschaft
element.children
wurde hinzugefügt. Sie gibt eine Sammlung von Kind-Elementen des gegebenen Elements zurück. - Die Eigenschaft
HTMLElement.contentEditable
wird jetzt unterstützt, um editierbare Elemente zu unterstützen. - Die Element Traversal API wird nun vom DOM Element-Objekt unterstützt.
- HTML-Dokumentknoten können jetzt mit
cloneNode()
geklont werden. - Die nicht standardmäßige DOM-Methode
getBoxObjectFor()
wurde entfernt. Sie sollten stattdessengetBoundingClientRect()
verwenden. - Gesendete DOM-Ereignisse können jetzt erneut gesendet werden. Dadurch besteht Firefox 3.5 den Acid 3 Test 30.
- Verbesserungen wurden an der DOM 2 Bereichsbehandlung vorgenommen.
- Im Nicht-Chrome-Bereich sind gefangene Objekte bei Ausnahmen nun das tatsächlich geworfene Objekt anstelle eines
XPConnect
Wrappers, der das geworfene Objekt enthält. - SVG-ID-Referenzen sind jetzt live.
- SVG-Filter funktionieren nun auch für
foreignObject
. - Die Methode
GetSVGDocument()
wurde zu denobject
undiframe
-Elementen für die Kompatibilität hinzugefügt. - Implizite Einstellung von Eigenschaften in Objekt- und Array-Initialisierern führt in JavaScript nicht mehr zur Ausführung von Settern.
- Die Variable
gDownloadLastDir.path
wurde ingDownloadLastDir.file
umbenannt, da sie sich auf einensIFile
und nicht auf einen Pfad bezieht. - Die Variable
gDownloadLastDirPath
wurde ingDownloadLastDirFile
umbenannt, da sie sich auf einensIFile
und nicht auf einen Pfad bezieht. - Ab Firefox 3.5 können Sie keine
data:
-Bindings mehr in Chrome-Paketen verwenden, dieXPCNativeWrapper
-Automatisierung erhalten.
Für XUL- und Add-on-Entwickler
Wenn Sie ein Erweiterungsentwickler sind, sollten Sie mit dem Lesen von Aktualisierung von Erweiterungen für Firefox 3.5 beginnen, welches einen hilfreichen Überblick darüber bietet, welche Änderungen Ihre Erweiterung betreffen könnten.
Neue Komponenten und Funktionalitäten
- Unterstützung des privaten Browsing-Modus
-
Firefox 3.5 bietet einen privaten Browsing-Modus, der die Aktivitäten des Benutzers nicht aufzeichnet. Erweiterungen können den privaten Browsing-Modus unterstützen, indem sie den in diesem Artikel angebotenen Leitlinien folgen.
- Sicherheitsänderungen in Firefox 3.5
-
Dieser Artikel behandelt sicherheitsrelevante Änderungen in Firefox 3.5.
- Themenänderungen in Firefox 3.5
-
Dieser Artikel behandelt themenbezogene Änderungen in Firefox 3.5.
- Überwachung von Wi-Fi-Zugangspunkten
-
Code mit UniversalXPConnect-Rechten kann nun die Liste der verfügbaren Zugangspunkte überwachen und Informationen über ihre SSIDs, MAC-Adressen und Signalstärke erhalten. Dies kann zusammen mit der Geolocation verwendet werden, um standortbasierte Dienste per Wi-Fi anzubieten.
Bemerkenswerte Änderungen und Verbesserungen
- Das XUL
textbox
-Widget bietet jetzt einensearch
-Typ, für die Verwendung als Suchfelder. - Um das Ziehen und Ablegen von Tabs zwischen Fenstern zu unterstützen, verfügt das
browser
-Widget jetzt über eineswapDocShells()
-Methode. - Das Attribut
level
wurde dempanel
-Element hinzugefügt; dies gibt an, ob Panels über anderen Anwendungen oder nur über dem Fenster erscheinen, das das Panel enthält. - XUL-Elemente unterstützen jetzt die Eigenschaften
clientHeight
,clientWidth
,scrollHeight
undscrollWidth
. keyset
enthält jetzt eindisabled
-Attribut.- Darüber hinaus können
keyset
s jetzt mit der MethoderemoveChild()
des Knotens entfernt werden. mozIStorageStatement
hatte die Methodeinitialize()
entfernt; Nutzer sollten die MethodecreateStatement()
verwenden, um ein neues Statement-Objekt zu erhalten.- Die Storage-API bietet jetzt Unterstützung für asynchrone Anfragen.
- Das
nsICookie2
-Interface zeigt jetzt die Zeit, zu der Cookies erstellt wurden, in seinem neuencreationTime
-Attribut an. - Ein Flag wurde zum
nsIProtocolHandler
hinzugefügt (URI_IS_LOCAL_RESOURCE
), das während der Chrome-Registrierung überprüft wird, um sicherzustellen, dass ein Protokoll registriert werden darf. - Firefox sucht jetzt nach Plugins in
/usr/lib/mozilla/plugins
auf Linux sowie in den zuvor unterstützten Standorten. - Die Plugin-API wurde aktualisiert, um Unterstützung für den privaten Browsing-Modus zu enthalten; Sie können jetzt
NPN_GetValue()
verwenden, um den Status des privaten Browsing-Modus mit der VariablenNPNVprivateModeBool
abzufragen.
Neue Funktionen für Endbenutzer
Benutzererfahrung
- Standortbasiertes Browsen
-
Wenn Sie es möchten, können Sie Firefox 3.5 erlauben, Informationen über Ihren aktuellen Standort mit Websites zu teilen. Firefox 3.5 kann Informationen über das Netzwerk, mit dem Sie verbunden sind, verwenden, um Ihren Standort zu teilen. Natürlich wird es vor der Freigabe um Ihre Erlaubnis bitten, um Ihre Privatsphäre zu gewährleisten.
- Offene Audio- und Videounterstützung
-
Firefox 3.5 unterstützt eingebettetes Video und Audio im offenen Ogg-Format sowie WAV für Audio. Keine Plugins, keine verwirrenden Fehlermeldungen darüber, dass etwas installiert werden muss, das auf Ihrer Plattform ohnehin nicht verfügbar ist.
- Lokale Datenspeicherung
-
Webanwendungen können jetzt die lokale Speicherfunktion von Web Storage verwenden, um Daten auf Ihrem Computer zu speichern. Dies ist ideal für alles, von Sitepräferenzen bis zu komplexeren Daten.
Sicherheit und Datenschutz
- Privates Surfen
-
Müssen Sie den Computer von jemand anderem benutzen? Schalten Sie den privaten Browsing-Modus ein und nichts wird über Ihre Sitzung aufgezeichnet, einschließlich Cookies, Verlauf und anderer potenziell privater Informationen.
- Bessere Datenschutzkontrollen
-
Das Datenschutz-Einstellungsfeld wurde komplett neu gestaltet, um Benutzern mehr Kontrolle über ihre privaten Informationen zu bieten. Benutzer können wählen, ob sie alles, einschließlich Verlaufinformationen, Cookies, Downloads und Formularfeldern, beibehalten oder verwerfen möchten. Darüber hinaus können Benutzer festlegen, ob der Verlauf und/oder Lesezeichen in die automatischen Vorschläge der Adressleiste einbezogen werden sollen, um zu verhindern, dass private Webadressen unerwartet auftauchen, während sie in die Adressleiste eingeben.
Leistung
- Schnellere JavaScript-Leistung
-
JavaScript, das "J" in "AJAX", ist in Firefox 3.5 mit der neuen TraceMonkey-JavaScript-Engine dramatisch beschleunigt. Webanwendungen sind viel schneller als in Firefox 3.
- Schnellere Seitenwiedergabe
-
Webinhalte werden in Firefox 3.5 dank Technologien wie "spekulatives Parsen" schneller gezeichnet. Ihre Benutzer müssen nicht wissen, was es bedeutet, außer dass "es lässt Dinge schneller zeichnen".