Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Firefox 11 Versionshinweise für Entwickler

Firefox 11 wurde am 13. März 2012 veröffentlicht. Dieser Artikel bietet Informationen über die neuen Funktionen und die wichtigsten behobenen Fehler in dieser Version sowie Links zu ausführlicherer Dokumentation für sowohl Webentwickler als auch Add-on-Entwickler.

Änderungen für Webentwickler

HTML

  • Die Attribute muted und loop auf <audio> und <video> Elementen wurden implementiert.

DOM

  • Die element.outerHTML Eigenschaft wird jetzt auf HTML-Elementen unterstützt.
  • XMLHttpRequest unterstützt HTML-Parsing.
  • Unterstützung für die Nutzung der XMLHttpRequest responseType und withCredentials Attribute bei synchronen Anfragen wurde entfernt. Der Versuch dies zu tun, wirft eine NS_ERROR_DOM_INVALID_ACCESS_ERR Ausnahme. Diese Änderung wurde dem W3C zur Standardisierung vorgeschlagen.
  • Die neue Methode navigator.mozVibrate() ermöglicht es, das Gerät vibrieren zu lassen, wo unterstützt; dies ist als mozVibrate() in Gecko implementiert.
  • navigator.mozApps gibt ein Apps-Objekt zurück, das Sie nutzen können, um Open-Web-Anwendungen zu installieren und zu verwalten.
  • MozBeforePaint-Ereignisse werden nicht mehr ausgelöst. Verbraucher von mozRequestAnimationFrame(), die diese genutzt haben, sollten stattdessen eine Callback-Funktion übergeben.
  • Unterstützung für das Abbrechen von Animationsframe-Anfragen wurde hinzugefügt; window.mozRequestAnimationFrame() gibt jetzt einen Anforderungs-ID-Wert zurück, den Sie an window.mozCancelAnimationFrame() übergeben können, um die Anfrage abzubrechen.
  • Mehrere Konstruktoren von Event (Event, HTML-Ereignisse, UIEvent und MouseEvent), die in DOM4-Spezifikationen eingeführt wurden, werden nun unterstützt.
  • Die Battery API ist nun standardmäßig aktiviert.
  • Unterstützung für die Eigenschaften defaultMuted, loop und muted auf HTMLMediaElement wurde hinzugefügt.
  • Ein Aufruf von Document/exitFullscreen stellt nun das zuvor Vollbild-Element wieder her, wenn ein anderes Element im Vollbildmodus war, als die Methode Element/requestFullScreen des aktuellen Elements aufgerufen wurde.
  • Die Methode window.mozRequestAnimationFrame() unterstützt nicht mehr die Argumentlos-Form. Diese Form wurde kaum verwendet und wird voraussichtlich kein Teil des Standards.
  • SVG-als-Bild kann nun in ein Canvas gezeichnet werden, ohne dass Canvas verfärbt wird.
  • Die nicht standardmäßige countryCode-Eigenschaft der GeoPositionAddress-Schnittstelle wurde entfernt; siehe nsIDOMGeoPositionAddress.
  • Server-sent events unterstützen jetzt CORS.
  • In der Vergangenheit wurden beim Folgen eines Links die Werte, die im window.navigator Objekt gesetzt wurden, von der neuen Seite übernommen. Jetzt wird ein neues navigator Objekt für die neue Seite erstellt. Dadurch verhält sich Firefox wie alle anderen Browser.

CSS

JavaScript

Keine Änderung.

SVG

  • Die SVGSVGElement DOM-Schnittstelle unterstützt jetzt die getElementById Methode.

WebSocket

  • Die WebSocket API unterstützt jetzt binäre Nachrichten (siehe Firefox Bug 676439).
  • Sowohl das Protokoll als auch die API wurden auf den neuesten Entwurf der Spezifikation aktualisiert und die API wurde entprefixed (siehe Firefox Bug 666349 und Firefox Bug 695635).
  • Zuvor waren Nachrichten, die in Firefox mit WebSockets gesendet und empfangen wurden, auf 16 MB begrenzt; sie können jetzt bis zu 2 GB groß sein (obwohl Speichergrenzen sie daran hindern könnten, so groß zu sein, unterstützt Firefox sie).

IndexedDB

  • Die Unterstützung für IDBFactory.cmp() wurde hinzugefügt.

  • Ein IndexedDB-Schlüssel kann auch einer der folgenden Typen sein: Datum, Arrays und Float (und nicht nur String und Integer).

  • Von nun an werden Transaktionen gestartet, wenn die Transaktion erstellt wird, nicht wenn die erste Anfrage gestellt wird; betrachten Sie zum Beispiel dies:

    js
    var trans1 = db.transaction("foo", READ_WRITE);
    var trans2 = db.transaction("foo", READ_WRITE);
    
    trans2.put("2", "key");
    trans1.put("1", "key");
    

    Nachdem der Code ausgeführt wurde, sollte der Objektspeicher den Wert "2" enthalten, da trans2 nach trans1 ausgeführt wird.

  • Vor Firefox 11 wurden Objektspeicher autoIncrement Zähler über alle Objektspeicher für eine gegebene Datenbank hinweg geteilt, während laut Spezifikation jeder Objektspeicher einen separaten Zähler haben sollte. Dies ist nun behoben.

  • Es ist jetzt möglich, einen Index zu erstellen mit einem leeren keyPath.

  • Es ist nun möglich, einen Multi-Entry-Index zu erstellen (siehe IDBObjectStore.createIndex Parameter.)

  • Das abort Ereignis propagiert jetzt; zusätzlich wurde ein onabort Handler hinzugefügt.

  • IndexedDB kann jetzt verwendet werden, um Dateien/Blobs zu speichern.

  • IndexedDB unterstützt jetzt komplexe Schlüsselpfade, z.B. foo.bar um auf Eigenschaft bar von Eigenschaft foo zuzugreifen.

  • IndexedDB kann jetzt ein Array als keyPath akzeptieren, wenn ein Objektspeicher oder ein Index erstellt wird (Firefox Bug 694138.)

Netzwerk

Entwicklerwerkzeuge

  • Der Page Inspector bietet jetzt eine 3D-Ansicht, wenn Ihr System WebGL unterstützt.
  • Der neue Style Editor bietet eine freie Möglichkeit, CSS-Stile in Echtzeit zu bearbeiten und zu erstellen.
  • Die Quelltextanzeige verwendet jetzt den neuen HTML5-Parser anstelle des alten HTML-Parsers.

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

JavaScript-Code-Module

NetUtil.jsm

  • readInputStreamToString() hat einen neuen, optionalen Parameter, um die Interpretation des Zeichensatzes während des Lesens des Eingabestreams zu konfigurieren.

Neue JavaScript-Code-Module

source-editor.jsm

Bietet einen benutzerfreundlichen Quellcode-Editor, den Sie in Ihren Add-ons verwenden können. Dies ist derselbe Editor, der von Scratchpad und anderen in Firefox integrierten Entwicklerwerkzeugen verwendet wird.

Schnittstellenänderungen

  • Die mozIAsyncHistory Schnittstelle hat eine neue Methode mozIAsyncHistory.isURIVisited(), um zu prüfen, ob eine URI besucht wurde.
  • Eine neue Schnittstelle mozIVisitStatusCallback wurde hinzugefügt, um Callback-Verarbeitungsfunktionen für mozIAsyncHistory.isURIVisited() bereitzustellen.
  • Die nsIMacDockSupport Schnittstelle unterstützt jetzt das Hinzufügen eines Textabzeichens zum Anwendungs-Symbol im Dock mithilfe ihres neuen badgeText Attributes.
  • In der nsINavHistoryResultObserver Schnittstelle müssen Sie nun nsINavHistoryResultObserver.containerStateChanged() implementieren anstelle der veralteten Methoden containerOpened() und containerClosed().

Entfernte Schnittstellen

Die folgenden Schnittstellen waren Implementierungsdetails, die nicht mehr benötigt werden:

  • nsICharsetResolver
  • nsIDOMNSElement, siehe bug707576, verwenden Sie nsIDOMElement stattdessen.

Themenbezogene Änderungen

  • Die omni.jar Datei wird jetzt omni.ja genannt.

Präferenzänderungen

ui.tooltipDelay

Gibt die Verzögerung in Millisekunden an, zwischen dem Anfang der Mauszeigerbewegung über ein Objekt und der Anzeige eines Tooltip.

Build-System-Änderungen

  • Die --enable-tracejit Build-Option wurde entfernt.

Weitere Änderungen

  • Add-ons, die lange Zeit nicht aktualisiert wurden, werden nicht mehr standardmäßig als kompatibel betrachtet; derzeit sind dies Add-ons, die eine maxVersion von 4.0 angeben.