mozilla

Version 270487 von Firefox 4 für Entwickler

  • Adressname der Version: Firefox_4_für_Entwickler
  • Titel der Version: Firefox 4 für Entwickler
  • ID der Version: 270487
  • Erstellt:
  • Autor: fscholz
  • Aktuelle Version? Nein
  • Kommentar 727 words added

Inhalt der Version

Firefox 4, in der Beta-Version seit Juni 2010 verfügbar, verbessert die Performance, fügt weitere Unterstützung für HTML5 sowie anderen fortschreitenden Technologien hinzu und verbessert die Sicherheit noch weiter. Dieser Artikel liefert Informationen über das anstehende Release von Firefox 4 und welche neuen Funktionen für Webentwickler, Add-on Entwickler sowie Gecko-Entwickler verfügbar sein werden.

Viele der genannten Funktionen können bereits in einem Nightly Build getestet werden.

Hinweis: Dieser und viele verweisende Artikel befinden sich im Aufbau. Einige Artikelnamen sind Platzhalter und müssen noch erstellt und übersetzt werden.

Funktionen für Webentwickler

Gecko verwendet nun einen HTML5 Parser, welcher etliche Fehler behebt und die Kompatibilität sowie Performance verbessert.
Es ist nun auch möglich SVG und MathML direkt im HTML Markup zu notieren.

HTML

Der neue HTML5 Parser
Was der neue Parser für Ihre Webseiten bedeutet und wie Sie jetzt SVG und MathML innerhalb Ihrer Inhalte verwenden können.
HTML5 Formulare
Verbesserungen an Webformularen durch neue Attribute und Typen aus HTML5.
HTML5 Abschnitte
Die Gecko-Engine unterstützt nun die neuen HTML5 Elemente, die das Dokument in Abschnitte gliedern: {{ HTMLElement("article") }}, {{ HTMLElement("section") }}, {{ HTMLElement("nav") }}, {{ HTMLElement("aside") }}, {{ HTMLElement("hgroup") }}, {{ HTMLElement("header") }} und {{ HTMLElement("footer") }}.
Weitere HTML5 Elemente
Gecko unterstützt nun auch die folgenden neuen HTML5 Elemente: {{ HTMLElement("mark") }}, {{ HTMLElement("figure") }} und  {{ HTMLElement("figcaption") }}.
WebSockets
Eine Einleitung zur neuen WebSockets API für Echtzeitkommunikation zwischen einer Webanwendung und einem Server.

Sonstige HTML Änderungen

  • {{ HTMLElement("textarea") }} Elemente sind nun standardmäßig vergrößerbar. Die {{ cssxref("resize") }} CSS Eigenschaft kann benutzt werden, um dies abzuschalten.
  • canvas.getContext und canvas.toDataURL werfen keine Exceptions mehr aus, wenn sie mit unbekannten Argumenten aufgerufen worden sind.
  • canvas2dcontext.globalCompositeOperation, canvas2dcontext.lineCap und canvas2dcontext.lineJoin werfen keine Exception mehr aus, wenn sie auf einen unbekannten Wert gesetzt werden.

CSS

CSS Transitions
CSS Transitions werden in Firefox 4 unterstützt.
Berechnete Werte in CSS
Unterstützung für berechnete Werte über calc() ist in Arbeit. Siehe {{ bug("363249") }}.
Gruppierung von Selektoren
Der Selektor {{ cssxref(":-moz-any") }} wurde hinzugefügt, um Selektoren zu gruppieren und Kombinatoren zu zerlegen.
Unterstützung von Ausschnitten in Hintergrundbildern
Die {{ cssxref("-moz-image-rect") }} CSS Eigenschaft ermöglicht es Ausschnitte von Bildern als Hintergrundbild zu verwenden.
CSS Touch Eigenschaften
Unterstützung für Touch Eigenschaften wurde hinzugefügt. Details folgen noch.
Datenschutz beim :visited Selektor
Es gab Änderungen am :visited Selektor, welcher nun nicht mehr dazu missbraucht werden kann, Informationen über besuchte Links preis zu geben. Die Änderungen betreffen einige Webanwendungen.

Sonstige CSS Änderungen

  • Die {{ cssxref("text-shadow") }} Eigenschaft beschränkt den Unschärfe-Radius auf 300px aus Gründen der Performance.
  • Die {{ cssxref(":-moz-window-inactive") }} Pseudoklasse wurde implementiert.
  • Die {{ cssxref("-moz-tab-size") }} Eigenschaft lässt Sie die Breite eines Tabzeichens (U+0009) festlegen, wenn der Text gerendert wird.
  • Die CSS3 {{ cssxref("resize") }} Eigenschaft wurde implementiert.
  • Die-moz-background-size Eigenschaft wurde zum endgültigen {{ cssxref("background-size") }} Namen geändert; -moz-background-size wird nicht länger unterstützt.
  • Die {{ cssxref("overflow") }} Eigenschaft wird nicht länger auf Table-group Elemente (<thead>, <tbody>, und <tfoot>) angewendet.

Grafik und Video

WebGL
Der WebGL Standard wird nun von Firefox unterstützt.
Leistung von Grafiken und Videos optimieren
Tipps und Tricks zur Optimierung der Performance von Grafiken und Videos in Firefox 4.
Unterstützung von WebM Videos
Das neue offene WebM Videoformat wird nun von Gecko 2.0 unterstützt.
Full screen API
Details folgen.
SMIL Animation
Unterstützung von SMIL Animationen in SVG ist nun verfügbar. Siehe {{ bug("482402") }}.
SVG als images und CSS Backgrounds verwenden
Sie können nun SVG in ein {{ htmlelement("img") }} Element einsetzen, genau wie in Hintergrundbildern in CSS. Siehe {{ bug("272288") }}, {{ bug("276431") }} und {{ bug("231179") }}.

DOM

Grenzen von Rechtecken beziehen
Das Range Objekt verfügt nun über die Methoden getClientRects() und getBoundingClientRect(). Siehe {{ bug("396392") }}.
Maus-Events auf beliebigen Elementen erfassen
Unterstützung für vom Internet Explorer stammende APIs: setCapture() und releaseCapture(). Siehe {{ bug("503943") }}.
Änderungen am Browserverlauf vornehmen
Der bestehende Verlauf, durch das {{ domxref("window.history") }} Objekt verfügbar, unterstützt nun die neuen HTML5 pushState() und replaceState() Methoden.
Touch und Multi-Touch Events
Unterstützung für Touch und Multi-Touch Events wurde hinzugefügt.
IndexedDB
Der IndexedDB Standard, welcher eine lokale Datenbank für Webanwendungen bereitstellt, wird von Firefox 4 unterstützt.

Sonstige DOM Änderungen

  • Das Wrapping eines {{ HTMLElement("textarea") }} Elements kann nun über das DOM wrap Attribut gesteuert werden. {{ bug("41464") }}
  • DOM {{ domxref("file") }} Objekte bieten nun eine url Eigenschaft an.
  • DOM {{ domxref("file") }} Objekte verfügen nun über eine click() Methode. (Noch nicht erledigt, siehe Bug 36619.)
  • FormData für XMLHttpRequest.
  • Die {{ domxref("element.isContentEditable") }} Eigenschaft wurde implementiert.
  • Die mozSourceNode Eigenschaft wurde dem DragTransfer Objekt hinzugefügt.
  • Die selection.modify() Methode wurde dem {{ domxref("Selection") }} Objekt hinzugefügt. Damit können Sie die aktuelle Textauswahl einfach überschreiben oder die Cursor-Position im Browserfenster verändern.
  • Unterstützung des window.directories Objekts und der directories Funktion für {{ domxref("window.open") }}, welche in keinem anderen Browser unterstützt werden, wurden entfernt. Verwenden Sie personalbar stattdessen. {{ Bug("474058") }}
  • Die {{ domxref("event.mozInputSource") }} Eigenschaft wurde zur den DOM Benutzerschnittstellen Events hinzugefügt; diese nicht-standardisierte Eigenschaft, lässt Sie den Typen des Geräts feststellen von dem das Event kommt.
  • Das {{ domxref("document.onreadystatechange") }} Event wurde implementiert.
  • Die {{ domxref("document.createElement") }} Methode akzeptiert nicht weiter < und > um den Tagnamen im Quirksmode.
  • Der Sprachkürzel wurde von {{ domxref("window.navigator.appVersion") }} entfernt.

Sicherheit

Einleitung zur Content Security Policy
Content Security Policy (CSP) ist ein Mozilla Entwurf, welcher dazu dienen soll, von Webdesignern und Serveradministratoren festlegen zu lassen, wie ihre Webseiten interagieren. Das Ziel ist Attacken zu entdecken und zu entschärfen, darunter auch Cross-Site Scripting und Dateninjektionsattacken.
ForceTLS
Details folgen.
Der Account Manager
Details folgen.
Änderungen am User-Agent String
Damit der Betrag am Datengehalt, welcher über HTTP Anfragen gesendet wird, verringert wird, wurden die Sprachkürzel vom User-Agent String entfernt.

JavaScript

Einen Überblick über die Änderungen, die in JavaScript 1.8.5 implementiert wurden, siehe Neu in JavaScript 1.8.5. JavaScript wird in Firefox 4 einige zusätzliche Funktionen des ECMAScript 5 Standards implementieren.

Änderungen für Mozilla- und Add-on-Entwickler

Für hilfreiche Tipps zur Aktualisierung von bestehenden Erweiterungen für Firefox 4, siehe Erweiterungen für Firefox 4 aktualisieren.

JavaScript Codemodule

Services.jsm
Das Services.jsm Codemodul stellt Methoden zur Verfügung, die es sehr einfach machen, Referenzen zu gemeinsam-verwendeten Diensten, wie dem Präferenzendienst oder dem Window Mediator herzustellen.
JS-ctypes API
Die JS-ctypes API ermöglicht es C-kompatible fremde Bibliotheksfunktionen aufzurufen ohne XPCOM zu benutzen.
Add-ons Manager
Der neue Add-ons Manager bietet Informationen über installierte Add-ons, unterstützt die Verwaltung und bietet Wege zu Installation und Deinstallation von Add-ons.
Codemodule von chrome: URLs laden
Sie können JavaScript Codmodule über chrome: URLs laden, sogar innerhalb von JAR Dateien.

DOM Änderungen

{{ domxref("ChromeWorker") }}
Ein neuer Worker-Typ für privilegierten Code. Dinge wie js-ctypes lassen sich von Workers in Erweiterungs- und Anwendungscode verwenden.

XUL

tabbrowser (gBrowser) Änderungen

Mehre Änderungen wurden am {{ XULElem("tabbrowser") }} Element vorgenommen, die Erweiterungen, die mit Tabs arbeiten, betreffen.

  • TabClose/TabSelect/TabOpen Events gehören nicht länger zum {{ XULElem("tabbrowser") }} Element (gBrowser). Event-Listener für diese Ereignisse sollten zu gBrowser.tabContainer hinzugefügt werden als direkt zu gBrowser.
  • Das Tab-Kontextmenü ist nicht länger ein anonymes Kindelement des {{ XULElem("tabbrowser") }} Elements. Es kann daher direkt mit XUL Overlays überlagert werden. Es kann außerdem direkt in JavaScript über gBrowser.tabContextMenu erreicht werden. Siehe in diesem Blogpost(engl.) für weitere Details.

Fernbetrieb von XUL entfernt

Entferntes XUL wird nicht länger unterstützt. Das betrifft XUL Dokumente, die über HTTP ausgeliefert werden.

Sonstige XUL Änderungen

  • Das {{ xulattr("readonly") }} Attribute funktioniert nun korrekt in Feldern.
  • Das {{ xulelem("resizer") }} Element lässt Sie nun das {{ xulattr("element") }} Attribut dazu verwenden, um ein Element als größenveränderbar festzulegen.
  • Das "active" Attribut wirkt nicht mehr auf aktive XUL Fenster. Stattdessen sollten Sie die neue {{ cssxref(":-moz-window-inactive") }} Pseudoklasse verwenden, um unterschiedliche Styles anzuwenden.
  • Das {{ xulattr("emptytext") }} Attribut ist nicht mehr erwünscht (deprecated). Sie sollten {{ xulattr("placeholder") }} stattdessen benutzen.
  • Das {{ xulelem("popup") }} Element wird nicht weiter unterstützt. Sie sollten {{ xulelem("menupopup") }} stattdessen verwenden.

Storage

Sonstige Storage API Änderungen

  • Die {{ interface("mozIStorageBindingParamsArray") }} Schnittstelle hat nun ein Längenattribut, das die Anzahl der {{ interface("mozIStorageBindingParams") }} Objekte im Array angibt.
  • {{ ifandmethod("mozIStorageStatement", "bindParameters") }} gibt nun einen Fehler aus, wenn der festgelegte {{ interface("mozIStorageBindingParamsArray") }} leer ist.

XPCOM

XPCOM Änderungen in Gecko 2.0
Details über Änderungen an XPCOM in Firefox 4.
Components.utils.getGlobalForObject()
Diese neue Methode gibt das globale Objekt, mit welchem ein Objekt assoziiert ist, zurück. Das ersetzt ein Verwendungszweck für das jetzt entfernte __parent__.

Memory Management

Fehlerfreie Speicherzuordnung
Mozilla stellt nur fehlerfreie Speicherzuordnungen zur Verfügung, die garantiert nicht null zurückgeben. Sie sollten diesen Artikel lesen, um zu lernen wie dies funktioniert und wie man explizit fehlbare oder unfehlbare Speicherzuordnung gestattet.

Weitere Änderungen

Gopher Unterstützung entfernt
Das Gopher Protokoll wird nicht länger nativ unterstützt. Unterstützung kann über die OverbiteFF Erweiterung erreicht werden.
Standardplugin entfernt
Das Standardplugin wurde entfernt. Der Ordner für Anwendungsplugins wurde außerdem entfernt. Unterstützung von Installationen über dieses Verzeichnis existiert aber immer noch. Siehe Bug 533891.
Erweiterungsmananger durch AddonManager ersetzt
nsIExtensionManager wurde durch den AddonManager ersetzt. Da es keinen Weg gibt den Installationsort von einer gegebenen Erweiterungs-ID zu bekommen, ist der beste Workaround den Verzeichnisdienst zu verwenden, um das Profilverzeichnis zu finden und dann "extensions" anzuhängen (obwohl dies nicht Erweiterung beachtet, die sich außerhalb des Profilverzeichnisses befinden).

Siehe auch

{{ languages( { "en": "en/Firefox_4_for_developers", "ja": "ja/Firefox_4_for_developers", "zh-tw": "zh_tw/Firefox_4_for_developers"} ) }}

Quelltext der Version

<p>Firefox 4, in der Beta-Version seit Juni 2010 verfügbar, verbessert die Performance, fügt weitere Unterstützung für HTML5 sowie anderen fortschreitenden Technologien hinzu und verbessert die Sicherheit noch weiter. Dieser Artikel liefert Informationen über das anstehende Release von Firefox 4 und welche neuen Funktionen für Webentwickler, Add-on Entwickler sowie Gecko-Entwickler verfügbar sein werden.</p>
<p>Viele der genannten Funktionen können bereits in einem <a class=" external" href="http://nightly.mozilla.org/" title="http://nightly.mozilla.org/">Nightly Build</a> getestet werden.</p>
<div class="note"><strong>Hinweis:</strong> Dieser und viele verweisende Artikel befinden sich im Aufbau. Einige Artikelnamen sind Platzhalter und müssen noch erstellt und übersetzt werden.</div>
<h2>Funktionen für Webentwickler</h2>
<p>Gecko verwendet nun einen <a href="/de/HTML/HTML5" title="de/HTML/HTML5">HTML5</a> Parser, welcher etliche Fehler behebt und die Kompatibilität sowie Performance verbessert. <br>
Es ist nun auch möglich <a href="/de/SVG" title="de/SVG">SVG</a> und <a href="/de/MathML" title="de/MathML">MathML</a> direkt im HTML Markup zu notieren.</p>
<h3>HTML</h3>
<dl> <dt><a href="/de/HTML/HTML5/HTML5_Parser" title="de/HTML/HTML5/HTML5 Parser">Der neue HTML5 Parser</a></dt> <dd>Was der neue Parser für Ihre Webseiten bedeutet und wie Sie jetzt SVG und MathML innerhalb Ihrer Inhalte verwenden können.</dd> <dt><a href="/de/HTML/HTML5/HTML5_Formulare" title="de/HTML/HTML5/HTML5 Formulare">HTML5 Formulare</a></dt> <dd>Verbesserungen an Webformularen durch neue Attribute und Typen aus HTML5.</dd> <dt><a href="/de/Abschnitte_und_Gliederungen_eines_HTML5_Dokuments" title="de/Abschnitte und Gliederungen eines HTML5 Dokuments">HTML5 Abschnitte</a></dt> <dd>Die Gecko-Engine unterstützt nun die neuen HTML5 Elemente, die das Dokument in Abschnitte gliedern: {{ HTMLElement("article") }}, {{ HTMLElement("section") }}, {{ HTMLElement("nav") }}, {{ HTMLElement("aside") }}, {{ HTMLElement("hgroup") }}, {{ HTMLElement("header") }} und {{ HTMLElement("footer") }}.</dd> <dt>Weitere HTML5 Elemente</dt> <dd>Gecko unterstützt nun auch die folgenden neuen HTML5 Elemente: {{ HTMLElement("mark") }}, {{ HTMLElement("figure") }} und  {{ HTMLElement("figcaption") }}.</dd> <dt>WebSockets</dt> <dd>Eine Einleitung zur neuen WebSockets API für Echtzeitkommunikation zwischen einer Webanwendung und einem Server.</dd>
</dl>
<h4>Sonstige HTML Änderungen</h4>
<ul> <li>{{ HTMLElement("textarea") }} Elemente sind nun standardmäßig vergrößerbar. Die {{ cssxref("resize") }} CSS Eigenschaft kann benutzt werden, um dies abzuschalten.</li> <li><code>canvas.getContext</code> und <code>canvas.toDataURL</code> werfen keine Exceptions mehr aus, wenn sie mit unbekannten Argumenten aufgerufen worden sind.</li> <li><code>canvas2dcontext.globalCompositeOperation</code>, <code>canvas2dcontext.lineCap</code> und <code>canvas2dcontext.lineJoin</code> werfen keine Exception mehr aus, wenn sie auf einen unbekannten Wert gesetzt werden.</li>
</ul>
<h3>CSS</h3>
<dl> <dt><a href="/de/CSS/CSS_Transitions" title="de/CSS/CSS Transitions">CSS Transitions</a></dt> <dd>CSS Transitions werden in Firefox 4 unterstützt.</dd> <dt>Berechnete Werte in CSS</dt> <dd>Unterstützung für berechnete Werte über <code>calc()</code> ist in Arbeit. Siehe {{ bug("363249") }}.</dd> <dt>Gruppierung von Selektoren</dt> <dd>Der Selektor {{ cssxref(":-moz-any") }} wurde hinzugefügt, um Selektoren zu gruppieren und Kombinatoren zu zerlegen.</dd> <dt>Unterstützung von Ausschnitten in Hintergrundbildern</dt> <dd>Die {{ cssxref("-moz-image-rect") }} CSS Eigenschaft ermöglicht es Ausschnitte von Bildern als Hintergrundbild zu verwenden.</dd> <dt>CSS Touch Eigenschaften</dt> <dd>Unterstützung für Touch Eigenschaften wurde hinzugefügt. Details folgen noch.</dd> <dt><a href="/de/CSS/Datenschutz_beim_:visited_Selektor" title="de/CSS/Datenschutz beim :visited Selektor">Datenschutz beim :visited Selektor</a></dt> <dd>Es gab Änderungen am <code>:visited</code> Selektor, welcher nun nicht mehr dazu missbraucht werden kann, Informationen über besuchte Links preis zu geben. Die Änderungen betreffen einige Webanwendungen.</dd>
</dl>
<h4>Sonstige CSS Änderungen</h4>
<ul> <li>Die {{ cssxref("text-shadow") }} Eigenschaft beschränkt den Unschärfe-Radius auf 300px aus Gründen der Performance.</li> <li>Die {{ cssxref(":-moz-window-inactive") }} Pseudoklasse wurde implementiert.</li> <li>Die {{ cssxref("-moz-tab-size") }} Eigenschaft lässt Sie die Breite eines Tabzeichens (U+0009) festlegen, wenn der Text gerendert wird.</li> <li>Die CSS3 {{ cssxref("resize") }} Eigenschaft wurde implementiert.</li> <li>Die<code>-moz-background-size </code>Eigenschaft wurde zum endgültigen {{ cssxref("background-size") }} Namen geändert; <code>-moz-background-size</code> wird nicht länger unterstützt.</li> <li>Die {{ cssxref("overflow") }} Eigenschaft wird nicht länger auf Table-group Elemente (<code>&lt;thead&gt;</code>, <code>&lt;tbody&gt;</code>, und <code>&lt;tfoot&gt;</code>) angewendet.</li>
</ul>
<h3>Grafik und Video</h3>
<dl> <dt> </dt><dt><a href="/de/WebGL" title="de/WebGL">WebGL</a></dt> <dd>Der WebGL Standard wird nun von Firefox unterstützt.</dd> <dt>Leistung von Grafiken und Videos optimieren</dt> <dd>Tipps und Tricks zur Optimierung der Performance von Grafiken und Videos in Firefox 4.</dd> <dt><a href="/de/Unterstützte_Medienformate_der_Audio_und_Video_Elemente#WebM" title="de/Unterstützte Medienformate der Audio und Video Elemente#WebM">Unterstützung von WebM Videos</a></dt> <dd>Das neue offene <a class=" external" href="http://www.webmproject.org/" title="http://www.webmproject.org/">WebM</a> Videoformat wird nun von Gecko 2.0 unterstützt.</dd> <dt>Full screen API</dt> <dd>Details folgen.</dd> <dt>SMIL Animation</dt> <dd>Unterstützung von SMIL Animationen in SVG ist nun verfügbar. Siehe {{ bug("482402") }}.</dd> <dt>SVG als images und CSS Backgrounds verwenden</dt> <dd>Sie können nun SVG in ein {{ htmlelement("img") }} Element einsetzen, genau wie in Hintergrundbildern in CSS. Siehe {{ bug("272288") }}, {{ bug("276431") }} und {{ bug("231179") }}.</dd>
</dl>
<h3>DOM</h3>
<dl> <dt>Grenzen von Rechtecken beziehen</dt> <dd>Das Range Objekt verfügt nun über die Methoden <code>getClientRects()</code> und <code>getBoundingClientRect()</code>. Siehe {{ bug("396392") }}.</dd> <dt>Maus-Events auf beliebigen Elementen erfassen</dt> <dd>Unterstützung für vom Internet Explorer stammende APIs: <code>setCapture()</code> und <code>releaseCapture()</code>. Siehe {{ bug("503943") }}.</dd> <dt><a href="/de/DOM/Änderungen_am_Browserverlauf_vornehmen" title="de/DOM/Änderungen am Browserverlauf vornehmen">Änderungen am Browserverlauf vornehmen</a></dt> <dd>Der bestehende Verlauf, durch das {{ domxref("window.history") }} Objekt verfügbar, unterstützt nun die neuen HTML5 <code>pushState()</code> und <code>replaceState()</code> Methoden.</dd> <dt>Touch und Multi-Touch Events</dt> <dd>Unterstützung für Touch und Multi-Touch Events wurde hinzugefügt.</dd> <dt><a href="/de/IndexedDB" title="de/IndexedDB">IndexedDB</a></dt> <dd>Der IndexedDB Standard, welcher eine lokale Datenbank für Webanwendungen bereitstellt, wird von Firefox 4 unterstützt.</dd>
</dl>
<h4>Sonstige DOM Änderungen</h4>
<ul> <li>Das Wrapping eines {{ HTMLElement("textarea") }} Elements kann nun über das DOM <code>wrap</code> Attribut gesteuert werden. {{ bug("41464") }}</li> <li>DOM {{ domxref("file") }} Objekte bieten nun eine <code>url</code> Eigenschaft an.</li> <li>DOM {{ domxref("file") }} Objekte verfügen nun über eine <code><span style="font-family: Verdana,Tahoma,sans-serif;">c</span>lick()</code> Methode. (Noch nicht erledigt, siehe <a class=" link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=36619" title="https://bugzilla.mozilla.org/show_bug.cgi?id=36619">Bug 36619</a>.)</li> <li><a href="/de/XMLHttpRequest/Verwendung_con_XMLHttpRequest#FormData_Objekte_verwenden" title="de/XMLHttpRequest/Verwendung con XMLHttpRequest#FormData Objekte verwenden">FormData</a> für XMLHttpRequest.</li> <li>Die {{ domxref("element.isContentEditable") }} Eigenschaft wurde implementiert.</li> <li>Die <a href="/de/DragDrop/DataTransfer#mozSourceNode" title="de/DragDrop/DataTransfer#mozSourceNode"><code>mozSourceNode</code></a> Eigenschaft wurde dem <a href="/de/DragDrop/DataTransfer" title="de/DragDrop/DataTransfer"><code>DragTransfer</code></a> Objekt hinzugefügt.</li> <li>Die <a href="/de/DOM/Selection/modify" title="de/DOM/Selection/modify"><code>selection.modify()</code></a> Methode wurde dem {{ domxref("Selection") }} Objekt hinzugefügt. Damit können Sie die aktuelle Textauswahl einfach überschreiben oder die Cursor-Position im Browserfenster verändern.</li> <li>Unterstützung des <code>window.directories</code> Objekts und der <code>directories</code> Funktion für {{ domxref("window.open") }}, welche in keinem anderen Browser unterstützt werden, wurden entfernt. Verwenden Sie <code>personalbar</code> stattdessen. {{ Bug("474058") }}</li> <li>Die {{ domxref("event.mozInputSource") }} Eigenschaft wurde zur den DOM Benutzerschnittstellen Events hinzugefügt; diese nicht-standardisierte Eigenschaft, lässt Sie den Typen des Geräts feststellen von dem das Event kommt.</li> <li>Das {{ domxref("document.onreadystatechange") }} Event wurde implementiert.</li> <li>Die {{ domxref("document.createElement") }} Methode akzeptiert nicht weiter <code>&lt;</code> und <code>&gt;</code> um den Tagnamen im Quirksmode.</li> <li>Der Sprachkürzel wurde von {{ domxref("window.navigator.appVersion") }} entfernt.</li>
</ul>
<h3>Sicherheit</h3>
<dl> <dt><a href="/de/Einleitung_zur_Content_Security_Policy" title="de/Einleitung zur Content Security Policy">Einleitung zur Content Security Policy</a></dt> <dd>Content Security Policy (CSP) ist ein Mozilla Entwurf, welcher dazu dienen soll, von Webdesignern und Serveradministratoren festlegen zu lassen, wie ihre Webseiten interagieren. Das Ziel ist Attacken zu entdecken und zu entschärfen, darunter auch Cross-Site Scripting und Dateninjektionsattacken.</dd> <dt>ForceTLS</dt> <dd>Details folgen.</dd> <dt>Der Account Manager</dt> <dd>Details folgen.</dd> <dt>Änderungen am <a href="/de/User-Agent_Strings" title="de/User-Agent Strings">User-Agent String</a></dt> <dd>Damit <a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=572650">der Betrag am Datengehalt, welcher über HTTP Anfragen gesendet wird, verringert wird</a>, wurden die Sprachkürzel vom User-Agent String entfernt.</dd>
</dl>
<h3>JavaScript</h3>
<p>Einen Überblick über die Änderungen, die in JavaScript 1.8.5 implementiert wurden, siehe <a href="/de/JavaScript/Neu_in_JavaScript/1.8.5" title="de/JavaScript/Neu in JavaScript/1.8.5">Neu in JavaScript 1.8.5</a>. JavaScript wird in Firefox 4 einige zusätzliche Funktionen des ECMAScript 5 Standards implementieren.</p>
<h2>Änderungen für Mozilla- und Add-on-Entwickler</h2>
<p>Für hilfreiche Tipps zur Aktualisierung von bestehenden Erweiterungen für Firefox 4, siehe <a href="/de/Erweiterungen/Erweiterungen_für_Firefox_4_aktualisieren" title="de/Erweiterungen/Erweiterungen für Firefox 4 aktualisieren">Erweiterungen für Firefox 4 aktualisieren</a>.</p>
<h3>JavaScript Codemodule</h3>
<dl> <dt><a href="/de/JavaScript/Codemodule/Services.jsm" title="de/JavaScript/Codemodule/Services.jsm">Services.jsm</a></dt> <dd>Das <code>Services.jsm</code> Codemodul stellt Methoden zur Verfügung, die es sehr einfach machen, Referenzen zu gemeinsam-verwendeten Diensten, wie dem Präferenzendienst oder dem Window Mediator herzustellen.</dd>
</dl>
<dl> <dt><a href="/de/JavaScript/Codemodule/ctypes.jsm" title="de/JavaScript/Codemodule/ctypes.jsm">JS-ctypes API</a></dt> <dd>Die JS-ctypes API ermöglicht es C-kompatible fremde Bibliotheksfunktionen aufzurufen ohne XPCOM zu benutzen.</dd> <dt><a href="/de/Addons/Add-on_Manager" title="de/Addons/Add-on Manager">Add-ons Manager</a></dt> <dd>Der neue Add-ons Manager bietet Informationen über installierte Add-ons, unterstützt die Verwaltung und bietet Wege zu Installation und Deinstallation von Add-ons.</dd> <dt><a href="/de/JavaScript/Codemodule/Verwendung#Das_Codemodul_finden" title="de/JavaScript/Codemodule/Verwendung#Das Codemodul finden">Codemodule von chrome: URLs laden</a> </dt> <dd>Sie können JavaScript Codmodule über <strong>chrome:</strong> URLs laden, sogar innerhalb von JAR Dateien.</dd>
</dl>
<h3>DOM Änderungen</h3>
<dl> <dt>{{ domxref("ChromeWorker") }}</dt> <dd>Ein neuer Worker-Typ für privilegierten Code. Dinge wie <a href="/de/js-ctypes" title="de/js-ctypes">js-ctypes</a> lassen sich von Workers in Erweiterungs- und Anwendungscode verwenden.</dd>
</dl>
<h3>XUL</h3>
<h4>tabbrowser (gBrowser) Änderungen</h4>
<p>Mehre Änderungen wurden am {{ XULElem("tabbrowser") }} Element vorgenommen, die Erweiterungen, die mit Tabs arbeiten, betreffen.</p>
<ul> <li>TabClose/TabSelect/TabOpen Events gehören nicht länger zum {{ XULElem("tabbrowser") }} Element (gBrowser). Event-Listener für diese Ereignisse sollten zu gBrowser.tabContainer hinzugefügt werden als direkt zu gBrowser.</li> <li>Das Tab-Kontextmenü ist nicht länger ein anonymes Kindelement des {{ XULElem("tabbrowser") }} Elements. Es kann daher direkt mit <a href="/de/XUL_Overlays" title="de/XUL Overlays">XUL Overlays</a> überlagert werden. Es kann außerdem direkt in JavaScript über gBrowser.tabContextMenu erreicht werden. Siehe in <a class=" external" href="http://www.gavinsharp.com/blog/2010/03/31/accessingmodifying-the-firefox-tab-context-menu-from-extensions/" title="http://www.gavinsharp.com/blog/2010/03/31/accessingmodifying-the-firefox-tab-context-menu-from-extensions/">diesem Blogpost</a>(engl.) für weitere Details.</li>
</ul>
<h4>Fernbetrieb von XUL entfernt</h4>
<p>Entferntes XUL <a class=" link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=546857" title="https://bugzilla.mozilla.org/show_bug.cgi?id=546857">wird nicht länger unterstützt</a>. Das betrifft XUL Dokumente, die über HTTP ausgeliefert werden.</p>
<h4>Sonstige XUL Änderungen</h4>
<ul> <li>Das {{ xulattr("readonly") }} Attribute funktioniert nun korrekt in Feldern.</li> <li>Das {{ xulelem("resizer") }} Element lässt Sie nun das {{ xulattr("element") }} Attribut dazu verwenden, um ein Element als größenveränderbar festzulegen.</li> <li>Das "active" Attribut wirkt nicht mehr auf aktive XUL Fenster. Stattdessen sollten Sie die neue {{ cssxref(":-moz-window-inactive") }} Pseudoklasse verwenden, um unterschiedliche Styles anzuwenden.</li> <li>Das {{ xulattr("emptytext") }} Attribut ist nicht mehr erwünscht (deprecated). Sie sollten {{ xulattr("placeholder") }} stattdessen benutzen.</li> <li>Das {{ xulelem("popup") }} Element wird nicht weiter unterstützt. Sie sollten {{ xulelem("menupopup") }} stattdessen verwenden.</li>
</ul>
<h3>Storage</h3>
<h4>Sonstige Storage API Änderungen</h4>
<ul> <li>Die {{ interface("mozIStorageBindingParamsArray") }} Schnittstelle hat nun ein Längenattribut, das die Anzahl der {{ interface("mozIStorageBindingParams") }} Objekte im Array angibt.</li> <li>{{ ifandmethod("mozIStorageStatement", "bindParameters") }} gibt nun einen Fehler aus, wenn der festgelegte {{ interface("mozIStorageBindingParamsArray") }} leer ist.</li>
</ul>
<h3>XPCOM</h3>
<dl> <dt><a href="/de/XPCOM/XPCOM_Änderungen_in_Gecko_2.0" title="de/XPCOM/XPCOM Änderungen in Gecko 2.0">XPCOM Änderungen in Gecko 2.0</a></dt> <dd>Details über Änderungen an XPCOM in Firefox 4.</dd> <dt><a href="/de/Components.utils.getGlobalForObject" title="de/Components.utils.getGlobalForObject">Components.utils.getGlobalForObject()</a></dt> <dd>Diese neue Methode gibt das globale Objekt, mit welchem ein Objekt assoziiert ist, zurück. Das ersetzt ein Verwendungszweck für das jetzt entfernte <code>__parent__</code>.</dd>
</dl>
<h3>Memory Management</h3>
<dl> <dt><a href="/de/Fehlerfreie_Speicherzuordnung" title="de/Fehlerfreie Speicherzuordnung">Fehlerfreie Speicherzuordnung</a></dt> <dd>Mozilla stellt nur fehlerfreie Speicherzuordnungen zur Verfügung, die garantiert nicht null zurückgeben. Sie sollten diesen Artikel lesen, um zu lernen wie dies funktioniert und wie man explizit fehlbare oder unfehlbare Speicherzuordnung gestattet.</dd>
</dl>
<h2>Weitere Änderungen</h2>
<dl> <dt>Gopher Unterstützung entfernt</dt> <dd>Das Gopher Protokoll wird nicht länger nativ unterstützt. Unterstützung kann über die <a class=" link-https" href="https://addons.mozilla.org/addon/7685/">OverbiteFF</a> Erweiterung erreicht werden.</dd> <dt>Standardplugin entfernt</dt> <dd>Das Standardplugin wurde entfernt. Der Ordner für Anwendungsplugins wurde außerdem entfernt. Unterstützung von Installationen über dieses Verzeichnis existiert aber immer noch. Siehe <a class=" link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=533891">Bug 533891</a>.</dd> <dt>Erweiterungsmananger durch AddonManager ersetzt</dt> <dd><a href="/de/XPCOM_Interface_Referenz/nsIExtensionManager" title="de/XPCOM Interface Referenz/nsIExtensionManager">nsIExtensionManager</a> wurde durch den <a href="/de/Addons/Add-on_Manager/AddonManager" title="de/Addons/Add-on Manager/AddonManager">AddonManager</a> ersetzt. Da es keinen Weg gibt den Installationsort von einer gegebenen Erweiterungs-ID zu bekommen, ist der beste Workaround den Verzeichnisdienst zu verwenden, um das Profilverzeichnis zu finden und dann "extensions" anzuhängen (obwohl dies nicht Erweiterung beachtet, die sich außerhalb des Profilverzeichnisses befinden).</dd>
</dl>
<h2>Siehe auch</h2>
<ul> <li><a href="/de/Firefox_3.6_für_Entwickler" title="de/Firefox 3.6 für Entwickler">Firefox 3.6 für_Entwickler<br> </a></li> <li><a class="internal" href="/de/Firefox_3.5_für_Entwickler" title="de/Firefox 3.5 für Entwickler">Firefox 3.5 für_Entwickler</a></li> <li><a class="internal" href="/de/Firefox_3_für_Entwickler" title="de/Firefox 3 für Entwickler">Firefox 3 für_Entwickler</a></li> <li><a class="internal" href="/de/Firefox_2_für_Entwickler" title="de/Firefox 2 für Entwickler">Firefox 2 für_Entwickler</a></li> <li><a class="internal" href="/de/Firefox_1.5_für_Entwickler" title="de/Firefox 1.5 für Entwickler">Firefox 1.5 für_Entwickler</a></li>
</ul>
<p>{{ languages( { "en": "en/Firefox_4_for_developers", "ja": "ja/Firefox_4_for_developers", "zh-tw": "zh_tw/Firefox_4_for_developers"} ) }}</p>
Zu dieser Version zurücksetzen