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 detaillierteren Dokumentationen für Web-Entwickler und Add-on-Entwickler.

Änderungen für Webentwickler

HTML

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

DOM

  • Die element.outerHTML-Eigenschaft wird jetzt bei HTML-Elementen unterstützt.
  • XMLHttpRequest unterstützt HTML-Parsing.
  • Die Unterstützung für die Verwendung der XMLHttpRequest-Attribute responseType und withCredentials bei synchronen Anfragen wurde entfernt. Der Versuch, dies zu tun, löst eine NS_ERROR_DOM_INVALID_ACCESS_ERR-Ausnahme aus. Diese Änderung wurde zur Standardisierung an das W3C vorgeschlagen.
  • Die neue Methode navigator.mozVibrate() ermöglicht es, das Gerät bei unterstütztem Browser zu vibrieren; dies wird als mozVibrate() in Gecko implementiert.
  • navigator.mozApps gibt ein Apps-Objekt zurück, das Sie verwenden können, um offene Webanwendungen zu installieren und zu verwalten.
  • MozBeforePaint-Ereignisse werden nicht mehr ausgelöst. mozRequestAnimationFrame()-Verbraucher, die diese verwendet haben, sollten stattdessen eine Callback-Funktion übergeben.
  • Unterstützung für das Abbrechen von Animationsbildanforderungen wurde hinzugefügt; window.mozRequestAnimationFrame() gibt jetzt einen Anforderungs-ID-Wert zurück, den Sie an window.mozCancelAnimationFrame() übergeben können, um die Anforderung abzubrechen.
  • Mehrere Event-Konstruktoren (Event, HTML-Ereignisse, UIEvent und MouseEvent), die in den DOM4-Spezifikationen eingeführt wurden, werden nun unterstützt.
  • Die Battery API ist jetzt standardmäßig aktiviert.
  • Unterstützung für die Eigenschaften defaultMuted, loop und muted auf HTMLMediaElement wurde hinzugefügt.
  • Der Aufruf von Document/exitFullscreen stellt nun das zuvor im Vollbildmodus befindliche Element wieder her, wenn ein anderes Element im Vollbildmodus war, als die requestFullScreen-Methode des aktuellen Elements aufgerufen wurde.
  • Die Methode window.mozRequestAnimationFrame() unterstützt nicht mehr die Argumentlose Form. Diese Form wurde nicht häufig verwendet und wird wahrscheinlich nicht Teil des Standards.
  • SVG-als-Bild kann jetzt in ein Canvas gezeichnet werden, ohne das Canvas zu verunreinigen.
  • Die nicht standardisierte 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 auf dem window.navigator-Objekt gesetzten Werte durch die neue Seite beibehalten. Jetzt wird ein neues navigator-Objekt für die neue Seite erstellt. Dies lässt Firefox wie alle anderen Browser verhalten.

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 nicht mehr vorangestellt (siehe Firefox-Bug 666349 und Firefox-Bug 695635).
  • Bisher waren die mit WebSockets in Firefox gesendeten und empfangenen Nachrichten auf 16 MB begrenzt; sie können jetzt bis zu 2 GB groß sein (obwohl Speicherplatzbeschränkungen dies verhindern können, unterstützt Firefox es).

IndexedDB

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

  • Ein IndexedDB-Schlüssel kann auch vom Typ Date, Arrays und Float sein (und nicht nur String und Integer).

  • Ab jetzt werden Transaktionen beim Erstellen der Transaktion gestartet, nicht wenn die erste Anfrage gestellt wird; zum Beispiel:

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

    Nach der Ausführung des Codes sollte der Objektspeicher den Wert "2" enthalten, da trans2 nach trans1 ausgeführt werden soll.

  • Vor Firefox 11 wurden die autoIncrement-Zähler des Objektspeichers über alle Objektspeicher einer bestimmten Datenbank hinweg geteilt, während laut Spezifikation jeder Objektspeicher einen separaten Zähler haben sollte. Dies ist jetzt behoben.

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

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

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

  • IndexedDB kann jetzt zum Speichern von Dateien/Blobs verwendet werden.

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

  • IndexedDB kann jetzt ein Array als keyPath beim Erstellen eines Objektspeichers oder eines Indexes akzeptieren (Firefox-Bug 694138.)

Netzwerk

  • Die Änderung in Firefox 8, die die Unterstützung für Anführungszeichen als Trennzeichen für RFC 2231 und RFC 5987 entfernt hat, wurde rückgängig gemacht, da dies einige Websites, einschließlich Outlook Web Access, beeinträchtigte.
  • Der User-Agent-String in HTTP-Headern enthält jetzt einen Indikator, der dem Server mitteilt, ob es sich bei dem zugreifenden Firefox um ein Telefon oder ein Tablet handelt.

Entwicklerwerkzeuge

  • Der Page Inspector bietet jetzt eine 3D-Ansicht, wenn Ihr System WebGL unterstützt.
  • Der neue Style Editor bietet eine freiformige Möglichkeit, CSS-Stylesheets 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 zur Konfiguration der Zeichensatzinterpretation beim Lesen des Eingabestreams.

Neue JavaScript-Code-Module

source-editor.jsm

Bietet einen praktischen, 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 überprüfen, ob eine URI besucht wurde.
  • Eine neue Schnittstelle mozIVisitStatusCallback wurde hinzugefügt, um Funktionalität für Rückrufbehandlung für mozIAsyncHistory.isURIVisited() bereitzustellen.
  • Die nsIMacDockSupport-Schnittstelle unterstützt jetzt das Hinzufügen eines Textabzeichens zum Anwendungssymbol im Dock mithilfe ihres neuen badgeText-Attributs.
  • In der nsINavHistoryResultObserver-Schnittstelle müssen Sie jetzt nsINavHistoryResultObserver.containerStateChanged() anstelle der veralteten Methoden containerOpened() und containerClosed() implementieren.

Entfernte Schnittstellen

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

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

Themenbezogene Änderungen

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

Veränderung der Voreinstellungen

ui.tooltipDelay

Gibt die Verzögerung in Millisekunden an, zwischen dem Beginn des Hoverns des Mauszeigers und der Anzeige eines Tooltips.

Änderungen im Build-System

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

Andere Änderungen

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