Firefox 21 Versionshinweise für Entwickler
Firefox 21 wurde am 14. Mai 2013 veröffentlicht. Dieser Artikel listet wichtige Änderungen auf, die nicht nur für Webentwickler nützlich sind, sondern auch für Firefox- und Gecko-Entwickler sowie Add-on-Entwickler.
Änderungen für Webentwickler
>HTML
- Das
scoped-Attribut wurde dem<style>-Element hinzugefügt. Es ermöglicht das Einfügen von Stilen, die vom Rest des Dokuments isoliert sind. Solche Stile können mit dem in Firefox 20 eingeführten CSS-Pseudoelement:scopeausgewählt werden. (Firefox-Bug 508725). - Das neue HTML-Element
<main>wurde implementiert (Firefox-Bug 820508).
JavaScript
- ECMAScript for XML (E4X), eine alte JavaScript-Erweiterung, wurde entfernt. Sie wurde nur in Gecko implementiert und fand nie signifikante Verbreitung (Firefox-Bug 788293).
- parseInt behandelt Zeichenfolgen mit vorangestellter "0" nicht mehr als oktal (Firefox-Bug 786135).
CSS
- Der
none-Wert von-moz-user-selectverhält sich jetzt wie der-moz-none-Wert und richtet Gecko an WebKit (Chrome, Safari), Presto (Opera) und Trident (Internet Explorer) aus (Firefox-Bug 816298). - Bei XHTML-Inhalten wurden mit dem
auto-Wert von-moz-hyphensfälschlicherweise Trennungsregeln angewendet, wenn die Sprache nicht explizit deklariert wurde. Dies wurde behoben durch (Firefox-Bug 702121). - Ein
auto-Wert wurde zur CSS-Eigenschaft-moz-orienthinzugefügt. Derauto-Wert entsprichthorizontal, wenn er auf<meter>und<progress>angewendet wird (Firefox-Bug 835883). - Die Medienabfrage
-moz-windows-glasswurde zu Windows 7 und älteren Windows-Systemen hinzugefügt (Firefox-Bug 816803).
DOM
- Unterstützung für
RTCPeerConnection(alsMozRTCPeerConnection) ist jetzt standardmäßig aktiviert (Firefox-Bug 796463). Sie kann bei Bedarf wieder deaktiviert werden, indemmedia.peerconnection.enabledauf false gesetzt wird. - Die
origin-Eigenschaft wurde zuwindow.locationhinzugefügt (Firefox-Bug 828261). - Die Methoden
valueAsDateundvalueAsNumberwurden für<input type="time">hinzugefügt (Firefox-Bug 781570). - Die Attribute
minundmaxgelten jetzt auch für<input type="time">(Firefox-Bug 781572). - Einige neue keyCodes für die Lautstärkesteuerung werden unterstützt (Firefox-Bug 674739).
- Einige neue keyCodes für alte Tastaturlayouts wie AS/400 werden jetzt unter Windows und Linux unterstützt (Firefox-Bug 833719).
- Verschiedene keyCode-Werte für OEM-spezifische Tasten unter Windows werden jetzt wieder unterstützt (Firefox-Bug 833719).
- Die Funktion
window.crypto.getRandomValueswurde implementiert (Firefox-Bug 440046). - Die nicht standardmäßigen Methoden
NodeIterator.expandEntityReferences()undTreeWalker.expandEntityReferences()wurden entfernt (Firefox-Bug 672190). - CSSOM: Die Methode
CSSKeyframesRule.insertRule()wurde entfernt und durchCSSKeyframesRule.appendRule()ersetzt, um eine Spezifikationsänderung zu erfüllen (Firefox-Bug 841896). - CSSOM Wenn der angegebene Parameter für
CSSStyleSheet.insertRulemehr als eine Regel enthält, wird jetzt einDOMExceptionmit einemSYNTAX_ERRausgelöst (Firefox-Bug 765599). - Bis jetzt wurde, wenn dieselben Header wiederholt mit
XMLHttpRequest.setRequestHeadergesetzt wurden, der zuletzt angegebene Wert verwendet. Dieses Verhalten wurde geändert, um der Spezifikation zu entsprechen, sodass diese Werte ordnungsgemäß kombiniert werden (Firefox-Bug 819051).
SVG
- Das Attribut paint-order wurde implementiert (Firefox-Bug 828805).
- Die Einstellung
svg.smil.enabledwurde entfernt. SMIL ist immer aktiviert. (Firefox-Bug 835030)
Netzwerk
- Wir aktualisieren weiterhin unsere CSP-Implementierung, um der CSP 1.0-Spezifikation zu entsprechen, die den Status eines Candidate Recommendation erreicht hat:
- Unterstützung für den spezifikationskonformen
Content-Security-Policy-HTTP-Header (zusätzlich zum experimentellenX-Content-Security-Policy) wurde hinzugefügt (Firefox-Bug 783049).Hinweis: Der Patch für diesen neuen Header wurde in Firefox 21 eingespielt, ist jedoch in Builds deaktiviert (Firefox-Bug 842657).
- Unterstützung für den spezifikationskonformen
Worker
- Die Funktionen
URL.createObjectURL()undURL.revokeObjectURL()sind jetzt in der Menge von Funktionen verfügbar, die für Worker verfügbar sind.
Änderungen für Add-on- und Mozilla-Entwickler
-
FUEL-Anwendungen können den Livemarks-Dienst nicht mehr nutzen (Firefox-Bug 834492). Der Livemarks-Dienst ist veraltet und wird zugunsten der neuen asynchronen Schnittstelle abgeschafft.
-
resource:///modules/undresource://gre/modules/sind nicht mehr identisch (Firefox-Bug 755724). Diese Änderung wurde wegen der Arbeit an der Metro-Version von Firefox vorgenommen. Wenn Sie Module mitresource:///modules/laden, sollten Sie prüfen, ob Sie jetzt stattdessenresource://gre/modules/verwenden möchten. Beachten Sie, dass einige Module auch von Firefox zu Toolkit verschoben wurden (Firefox-Bug 840287 und Firefox-Bug 811548 verschobenNewTabUtils.jsmund die Thumbnail-Module entsprechend). -
Das Add-on SDK ist nun in Firefox enthalten (Firefox-Bug 731779)
-
Die History-API hat zahlreiche veraltete APIs entfernt:
-
Ersetzt durch
mozIAsyncFavicons:nsIFaviconService::setFaviconUrlForPagensIFaviconService::setFaviconDatansIFaviconService::getFaviconDatansIFaviconService::getFaviconForPagensIFaviconService::setAndLoadFaviconForPagensIFaviconService::getFaviconImageForPagensIFaviconService::getFaviconDataAsDataURL
-
Ersetzt durch
mozIAsyncLivemarks:nsILivemarkService::*PlacesUtils.itemIsLivemarkPlacesUtils.nodeIsLivemarkContainerPlacesUtils.nodeIsLivemarkItem
-
Nur drittes Argument entfernt:
PlacesUIUtils.showBookmarkDialog
-
Nicht mehr von Places implementiert, verwenden Sie stattdessen
mozIAsyncHistory:nsIGlobalHistory2::addURInsIGlobalHistory2::isVisitednsIGlobalHistory2::setPageTitle
-
Nicht mehr benötigt, verwenden Sie
onDeleteURIoderonItemRemoved:nsINavHistoryObserver::OnBeforeDeleteURInsINavBookmarkObserver::OnBeforeItemRemoved
-
Nie richtig implementiert:
nsINavHistoryFullVisitResultNode
-
Veraltet, verwenden Sie stattdessen
mozIAsyncHistory::updatePlaces:nsINavHistoryService::AddVisit
-
-
nsIHttpChannel.redirectTowurde hinzugefügt, um das Umleiten von HTTP-Kanälen ohne fragile Hacks zu ermöglichen.