Firefox 3.5 für Entwickler
Firefox 3.5 (veröffentlicht am 30. Juni 2009) führt eine Reihe neuer Funktionen ein und bietet zusätzliche sowie verbesserte Unterstützung für eine Vielzahl von Webstandards. Dieser Artikel bietet eine umfassende Liste mit Links zu Artikeln, die die wichtigsten Verbesserungen behandeln.
Neue Entwicklerfunktionen in Firefox 3.5
>Für Website- und Anwendungsentwickler
Unterstützung von HTML 5
- HTML-Video und -Audio
-
Firefox 3.5 bietet Unterstützung für die HTML 5-Elemente
audioundvideo. - Offline-Ressourcen in Firefox
-
Firefox 3.5 unterstützt nun vollständig die HTML 5-Spezifikation für Offline-Ressourcen.
- Drag and Drop
-
Die HTML 5-API für Drag and Drop ermöglicht das Ziehen und Ablegen von Elementen innerhalb und zwischen Websites. Dies bietet auch eine einfachere API für Erweiterungen und auf Mozilla basierte Anwendungen.
Neu unterstützte CSS-Features
- Unterstützung für herunterladbare Schriftarten
-
Die neue
@font-face-Regel ermöglicht es, dass Webseiten herunterladbare Schriftarten bieten, sodass Webseiten genau nach den Vorstellungen des Seitenautors dargestellt werden können. - CSS-Medienabfragen
-
Firefox 3.5 unterstützt jetzt CSS-Medienabfragen, die die Unterstützung für medienabhängige Stylesheets verbessern.
::beforeund::afteraktualisiert auf CSS 2.1-
Die Pseudoelemente
::beforeund::afterwurden um vollständige CSS 2.1-Unterstützung erweitert, einschließlich Unterstützung für die Eigenschaftenposition,float,list-style-*und einigedisplay-Eigenschaften. ch-Einheiten für Längenangaben-
Die
ch-Einheit kann nun überall verwendet werden, wo eine <Länge> akzeptiert wird.1chist die Breite des "0"-Zeichens. opacity-
Die Mozilla-Erweiterung
-moz-opacityzu CSS wurde zugunsten der standardmäßigenopacity-Eigenschaft entfernt. text-shadow-
Die
text-shadow-Eigenschaft, mit der Webinhalte Schatteneffekte auf Text und Textdekorationen anwenden können, 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 Überläufe zu verhindern, wenn ein ansonsten unbrechbares Zeichenfolgen 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 von CSS.
- Die Farbwert
-moz-nativehyperlinktext -
Dieser neue Farbwert repräsentiert die standardmäßige Hyperlink-Farbe des Benutzersystems.
- Die
-moz-window-shadow-Eigenschaft und die:-moz-system-metric(mac-graphite-theme)-Pseudoklasse -
Diese neuen CSS-Funktionen wurden hinzugefügt, um die Gestaltung zu erleichtern.
- Neue Werte für
-moz-appearance -
Die Werte
-moz-win-glassund-moz-mac-unified-toolbarwurden zu-moz-appearancehinzugefügt. - Verwendung von CSS-Transformationen
-
Firefox 3.5 unterstützt CSS-Transformationen. Details finden Sie unter
-moz-transformund-moz-transform-origin. :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 fügt Unterstützung für die Web Storage-Eigenschaft
localStoragehinzu, die Webanwendungen eine Möglichkeit bietet, Daten lokal auf dem Rechner des Benutzers zu speichern. - Web Worker verwenden
-
Firefox 3.5 unterstützt Web Worker, um in Webanwendungen eine einfache Unterstützung für Multithreading zu ermöglichen.
- Geolocation verwenden
-
Firefox 3.5 unterstützt die Geolocation-API, die es Webanwendungen ermöglicht, Informationen über den aktuellen Standort des Benutzers zu erhalten, falls ein entsprechender Anbieter installiert und aktiviert ist.
- DOM-Elemente mit Selektoren lokalisieren
-
Mit der Selektoren-API können in einem Dokument Elemente abgefragt werden, die einer vorgegebenen Auswahlregel entsprechen.
- Mausgesten-Ereignisse
-
Firefox 3.5 unterstützt Mausgesten-Ereignisse wie Trackpad-Wischgesten.
- Das
NodeIterator-Objekt -
Das
NodeIterator-Objekt bietet Unterstützung für das Iterieren über die Liste der Knoten in einem DOM-Teilbaum. - Das
MozAfterPaint-Ereignis -
Dieses neue DOM-Ereignis wird nach Malaktualisierungen in Fenstern gesendet.
- Das
MozMousePixelScroll-Ereignis -
Dieses neue DOM-Ereignis ermöglicht die Erkennung von pixelbasierten Maus-Scrollrad-Ereignissen anstelle von linienbasierten Scroll-Ereignissen.
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 Prototypenobjekt eines spezifizierten Objekts zurück.
- Verwendung von nativem JSON
-
Firefox 3.5 bietet native Unterstützung für JSON.
- Neue Trim-Methoden für das String-Objekt
-
Das
String-Objekt verfügt jetzt über die Methodentrim(),trimLeft()undtrimRight().
Netzwerke
- Domänenübergreifende Zugriffskontrollen für HTTP
-
In Firefox 3.5 ist es nun möglich, dass HTTP-Anfragen, einschließlich derjenigen, die durch
XMLHttpRequestgemacht werden, domänenübergreifend funktionieren, sofern der Server dies unterstützt. - Fortschrittsereignisse für
XMLHttpRequest -
Es werden jetzt Fortschrittsereignisse angeboten, um Erweiterungen die Überwachung des Anfragefortschritts zu ermöglichen.
- Verbesserte synchrone
XMLHttpRequest-Unterstützung -
DOM Timeout und Eingabeevents werden jetzt während eines synchronen
XMLHttpRequestunterdrückt. - Steuerung des DNS-Vorababrufs
-
Firefox 3.5 bietet DNS-Vorababruf, bei dem die Domainnamensauflösung im Voraus für Links auf der aktuellen Seite durchgeführt wird, um Zeit zu sparen, wenn Links tatsächlich angeklickt werden. Dieser Artikel beschreibt, wie Sie Ihre Website anpassen können, um den Vorababruf zu deaktivieren oder dessen Betrieb anzupassen.
Neue Canvas-Features
- HTML 5 Text-API für
canvas-Elemente -
Canvas-Elemente unterstützen nun die HTML 5-Text-API.
- Schatteneffekte in einer
canvas -
Canvas-Schatteneffekte werden nun unterstützt.
createImageData()-
Die Canvas-Methode
createImageData()wird jetzt unterstützt, sodass Code speziell einImageData-Objekt erstellen kann, anstatt dass dies automatisch erfolgen muss. Dies kann die Leistung andererImageData-Methoden verbessern, da verhindert wird, dass sie das Objekt selbst erstellen müssen. moz-opaque-Attribut-
Das
moz-opaque-Attribut wurde hinzugefügt, das dem Canvas mitteilt, ob Transluzenz eine Rolle spielen wird. Wenn das Canvas weiß, dass keine Transluzenz vorliegt, kann die Zeichenleistung optimiert werden. Siehe auchHTMLCanvasElement.mozOpaque.
Neue SVG-Features
- Anwenden von SVG-Effekten auf HTML-Inhalte
-
Sie können jetzt SVG-Effekte auf HTML- und XHTML-Inhalte anwenden; dieser Artikel beschreibt, wie das geht.
Verschiedene neue Funktionen
- ICC-Farbkorrektur in Firefox
-
Firefox 3.5 unterstützt jetzt die ICC-Farbkorrektur für markierte Bilder.
- Das
defer-Attribut wird jetzt aufscript-Elementen unterstützt -
Dieses Attribut zeigt dem Browser an, dass er möglicherweise die Seite weiter parsen und rendern kann, ohne auf das Ende der Skriptausführung zu warten.
Weitere Verbesserungen
- Die
wholeText-Eigenschaft und dieText.replaceWholeText()-Methode des Textknotens wurden implementiert. - Die Eigenschaft
element.childrenwurde hinzugefügt. Sie gibt eine Sammlung von Kindelementen des gegebenen Elements zurück. - Die Eigenschaft
HTMLElement.contentEditablewird jetzt unterstützt, um bearbeitbare Elemente zu unterstützen. - Die Element-Traversal-API wird jetzt vom DOM Element-Objekt unterstützt.
- HTML-Dokumentknoten können jetzt mit
cloneNode()geklont werden. - Die nicht standardmäßige
getBoxObjectFor()-DOM-Methode wurde entfernt. Sie sollten stattdessengetBoundingClientRect()verwenden. - Versendete DOM-Ereignisse können jetzt erneut versendet werden. Dadurch besteht Firefox 3.5 den Acid3 Test 30.
- Verbesserungen wurden beim Umgang mit DOM 2-Range vorgenommen.
- In nicht-Chrome-Umgebung sind in Ausnahmen abgefangene Objekte nun das tatsächlich geworfene Objekt anstelle eines
XPConnect-Wrappers mit dem geworfenen Objekt. - SVG-ID-Verweise sind jetzt live.
- SVG-Filter funktionieren jetzt für
foreignObject. - Die
GetSVGDocument()-Methode wurde denobject- undiframe-Elementen für Kompatibilität hinzugefügt. - Implizites Setzen von Eigenschaften in Objekt- und Array-Literal-Initialisierern führt jetzt nicht mehr zu Setzern in JavaScript.
- Die Variable
gDownloadLastDir.pathwurde ingDownloadLastDir.fileumbenannt, da sie sich auf einensIFile, nicht auf einen Pfad bezieht. - Die Variable
gDownloadLastDirPathwurde ingDownloadLastDirFileumbenannt, da sie sich auf einensIFile, 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 Erweiterungen für Firefox 3.5 aktualisieren beginnen, das eine hilfreiche Übersicht über Änderungen bietet, die Ihre Erweiterung betreffen könnten.
Neue Komponenten und Funktionen
- Unterstützung für den privaten Modus
-
Firefox 3.5 bietet einen privaten Browsing-Modus, der die Aktivitäten des Benutzers nicht aufzeichnet. Erweiterungen können den privaten Modus unterstützen, indem sie den Richtlinien in diesem Artikel folgen.
- Sicherheitsänderungen in Firefox 3.5
-
Dieser Artikel behandelt sicherheitsrelevante Änderungen in Firefox 3.5.
- Thema-Änderungen in Firefox 3.5
-
Dieser Artikel behandelt thema-bezogene Änderungen in Firefox 3.5.
- Überwachung von WLAN-Zugangspunkten
-
Code mit UniversalXPConnect-Rechten kann jetzt die Liste der verfügbaren Zugangspunkte überwachen und Informationen zu ihren SSIDs, MAC-Adressen und Signalstärken abrufen. Dies kann in Kombination mit Geolocation verwendet werden, um Wi-Fi-basierte Standortdienste anzubieten.
Bemerkenswerte Änderungen und Verbesserungen
- Das XUL-
textbox-Widget bietet jetzt einensearch-Typ zur Verwendung als Suchfelder. - Zur Unterstützung des Ziehens und Ablegens von Tabs zwischen Fenstern verfügt das
browser-Widget jetzt über eineswapDocShells()-Methode. - Das
level-Attribut wurde zumpanel-Element hinzugefügt; dies gibt an, ob Panels über anderen Anwendungsfenstern oder nur über dem Fenster erscheinen, in dem das Panel enthalten ist. - XUL-Elemente unterstützen jetzt die Eigenschaften
clientHeight,clientWidth,scrollHeightundscrollWidth. keysetenthält jetzt eindisabled-Attribut.- Zusätzlich können
keysets jetzt mit derremoveChild()-Methode des Knotens entfernt werden. mozIStorageStatementhat dieinitialize()-Methode entfernt; Konsumenten sollten stattdessen diecreateStatement()-Methode verwenden, um ein neues Statement-Objekt zu erhalten.- Die Storage-API bietet jetzt Unterstützung für asynchrone Anfragen.
- Das
nsICookie2-Interface gibt jetzt die Zeit, zu der Cookies erstellt wurden, über das neuecreationTime-Attribut preis. - Ein Flag (
URI_IS_LOCAL_RESOURCE) wurde zunsIProtocolHandlerhinzugefügt, das während der Chrome-Registrierung überprüft wird, um sicherzustellen, dass ein Protokoll registriert werden darf. - Firefox sucht unter Linux jetzt nach Plugins unter
/usr/lib/mozilla/pluginssowie an den zuvor unterstützten Orten. - Die Plugin-API wurde aktualisiert, um Unterstützung für den privaten Modus zu bieten; Sie können jetzt
NPN_GetValue()verwenden, um den Zustand des privaten Modus mithilfe der VariablenNPNVprivateModeBoolabzufragen.
Neue Funktionen für Endbenutzer
>Benutzererfahrung
- Standorte-aware Browsing
-
Wenn Sie es erlauben, kann Firefox 3.5 Informationen über Ihren aktuellen Standort mit Websites teilen. Firefox 3.5 kann Informationen über das Netzwerk, mit dem Sie verbunden sind, verwenden, um Ihren Standort zu teilen. Natürlich wird vorher Ihre Erlaubnis eingeholt, um Ihre Privatsphäre zu gewährleisten.
- Unterstützung für offene Audio- und Videoformate
-
Firefox 3.5 unterstützt eingebettete Videos und Audios im offenen Ogg-Format sowie WAV für Audio. Keine Plugins, keine verwirrenden Fehlermeldungen darüber, dass irgendetwas installiert werden müsse, was sich dann doch als nicht verfügbar auf Ihrer Plattform herausstellt.
- Lokale Datenspeicherung
-
Webanwendungen können jetzt die lokalen Speicherfunktionen von Web Storage verwenden, um Daten auf Ihrem Computer zu speichern. Dies ist ideal für alles von Seitenpräferenzen bis hin zu komplexeren Daten.
Sicherheit und Datenschutz
- Privates Browsing
-
Müssen Sie den Computer einer anderen Person verwenden? Schalten Sie den privaten Browsing-Modus ein, und es wird nichts über Ihre Sitzung aufgezeichnet, einschließlich Cookies, Verlauf und aller anderen möglicherweise privaten Informationen.
- Bessere Datenschutzkontrollen
-
Die Datenschutz-Einstellungsleiste wurde vollständig neu gestaltet, um Benutzern mehr Kontrolle über ihre privaten Informationen zu bieten. Benutzer können wählen, ob sie alles, einschließlich Verlaufsinformationen, Cookies, Downloads und Eingabefeldinformationen, beibehalten oder verwerfen möchten. Darüber hinaus können Benutzer bestimmen, ob der Verlauf und/oder Lesezeichen in den automatischen Vorschlägen der Adressleiste enthalten sein sollen, damit Sie private Webadressen unerwartet beim Eingeben in die Adressleiste vermeiden können.
Leistung
- Schnellere JavaScript-Leistung
-
JavaScript, das "J" in "AJAX", wurde in Firefox 3.5 durch die neue TraceMonkey-JavaScript-Engine erheblich beschleunigt. Webanwendungen sind deutlich schneller als in Firefox 3.
- Schnellere Seitendarstellung
-
Webinhalte werden in Firefox 3.5 dank Technologien wie "spekulativem Parsen" schneller gezeichnet. Ihre Benutzer müssen nur wissen, dass es bedeutet, dass "es Dinge schneller zeichnet".