Veröffentlichungsnotizen für Entwickler zu Firefox 34
Firefox 34 wurde am 1. Dezember 2014 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 für Add-on-Entwickler.
Änderungen für Webentwickler
>Entwicklerwerkzeuge
Highlights:
- Storage Inspector: ein neues Werkzeug, das es Ihnen ermöglicht, Daten zu sehen, die von Webseiten gespeichert werden
- Performance-Werkzeug: überarbeitete Profiler-Benutzeroberfläche und Bildfrequenz-Timeline
- Frame-Umschaltung: Entwicklertools auf ein bestimmtes iframe in der Seite richten
- console.table-Unterstützung
- jQuery-Ereignisse sind im Seiten-Inspektor sichtbar
Alle DevTools-Fehler, die zwischen Firefox 33 und Firefox 34 behoben wurden.
CSS
-
Unsere experimentelle Implementierung von CSS Fonts Level 3 schreitet voran. Neu implementierte Funktionen sind:
- der Fallback-Algorithmus von
font-variant-position, der synthetische Alternativen für fehlende Glyphen basierend auf den vom Font bereitgestellten Subskript- und Superskriptmetriken erstellt (Firefox-Bug 1024804). - Die Voreinstellung
layout.css.font-features.enabledwurde entfernt, was bedeutet, dass die folgenden Eigenschaften nun standardmäßig aktiviert sind:- Die CSS Font Level 3-Version von
font-variant, die jetzt eine Kurzform-Eigenschaft ist. - Die eigenständigen Eigenschaften
font-variant-caps,font-variant-numeric,font-variant-position,font-variant-east-asian,font-variant-ligaturesundfont-variant-alternates. - Die Eigenschaften
font-kerningundfont-synthesis - Die Eigenschaften
font-feature-settingsundfont-language-overridesind unprefixed. Die prefixed Versionen sind für einige Zeit weiterhin verfügbar, um den Übergang zu erleichtern.
- Die CSS Font Level 3-Version von
- der Fallback-Algorithmus von
-
Der Wert
autowurde zumin-widthundmin-heighthinzugefügt, mit einem anderen Verhalten als beim letzten Mal (Firefox-Bug 984711 und Firefox-Bug 1015474). -
Eine experimentelle Implementierung der funktionalen Filterwerte der
filter-Eigenschaft wurde implementiert, die standardmäßig deaktiviert ist. Sie wird durch die Voreinstellunglayout.css.filters.enabledkontrolliert (Firefox-Bug 948265). -
Behoben wurde das Starten von CSS-Transitionen, die gleichzeitig mit Änderungen an
display,position,overflowund ähnlichen Eigenschaften starten (Firefox-Bug 625289).
HTML
Keine Änderung.
JavaScript
-
Die ES2015-Syntax für berechnete Eigenschaftsnamen in Objektliteralen wurde implementiert (Firefox-Bug 924688).
- Dies umfasst auch getter- und setter-Methodennamen (Firefox-Bug 1048384) und kann auch mit Destrukturierung verwendet werden.
-
Die ES2015 Kurzsyntax für die Definition von Methoden auf Objekten wurde implementiert (Firefox-Bug 924672).
-
Die ES2015
Object-MethodeObject.assign()wurde implementiert (Firefox-Bug 937855). -
ES2015 Template Strings und die
String.raw()-Methode werden jetzt unterstützt (Firefox-Bug 1038259, Firefox-Bug 1039774). -
Ein neues ES2015-Objekt
WeakSetwurde hinzugefügt (Firefox-Bug 792439). -
ES2015 Symbole (nur im Nightly-Kanal verfügbar) wurden aktualisiert, um den jüngsten Spezifikationsänderungen zu entsprechen (Firefox-Bug 1042602):
- Beim Versuch, ein Symbol in eine Zahl zu konvertieren, wird jetzt ein
TypeErrorgeworfen. - Bei Verwendung von loser Gleichheit gibt
Object(sym) == symjetzttruezurück.
- Beim Versuch, ein Symbol in eine Zahl zu konvertieren, wird jetzt ein
-
Die experimentelle Methode
TypedArray.prototype.move()(nur in ehemaligen Nightly- und Aurora-Kanälen verfügbar) wurde durch die nun implementierte Standardmethode ES2015TypedArray.prototype.copyWithin()ersetzt (Firefox-Bug 1021379). -
Im Strict Mode führt das Setzen eines doppelten Eigenschaftsnamens in Objektliteralen nicht mehr zu einem
SyntaxErrorgemäß ES2015-Spezifikation (Firefox-Bug 1041128). -
In regulären Ausdrücken (einschließlich
String.replace) ist der übereinstimmende Text für eine erfasste Gruppe jetztundefinedanstelle des leeren Strings, wenn diese Gruppe aufgrund von Quantifikatoren nicht abgefragt wurde (siehe Firefox-Bug 369778 und dieses Beispielcode). Beachten Sie, dass RegExp.$N aus Gründen der Webkompatibilität weiterhin einen leeren String zurückgibt (Firefox-Bug 1053944). -
Der ES2015 Spread-Operator wird nun in Destrukturierung unterstützt (Firefox-Bug 933276).
-
Destrukturierung verwendet jetzt das Iterator-Protokoll anstelle des Array-ähnlichen Protokolls (Firefox-Bug 933276).
-
Proxy.revocable()wurde implementiert (Firefox-Bug 978279).
Schnittstellen/APIs/DOM
-
Die Methode
Element.matches()wurde hinzugefügt; sie erfüllt die gleiche Funktion wie die nicht standardisiertemozMatchesSelector()(Firefox-Bug 886308). -
Die Methode
Performance.now()ist jetzt für Web-Arbeiter verfügbar (Firefox-Bug 908390). -
Die nicht standardmäßige Schnittstelle
MozNamedAttrMapwurde in die standardisierteNamedNodeMapumbenannt undElement.attributeswurde entsprechend angepasst (Firefox-Bug 1055467). -
Die Methode
Path2D.addPath()wurde hinzugefügt (Firefox-Bug 985801). -
Die nicht standardisierte Device Storage API ist jetzt auch für privilegierte Apps auf Android aktiviert (Firefox-Bug 886627).
-
Die Web Crypto API wurde standardmäßig aktiviert (Firefox-Bug 1074001).
-
Die Methode
MediaStreamTrack.stop()wurde hinzugefügt (Firefox-Bug 1057955). -
Unsere experimentelle Implementierung von EME schreitet voran. Die Methode
MediaKeySession.getUsableKeyIds()wurde hinzugefügt (Firefox-Bug 1057171). -
Bezüglich WebRTC:
- Eine experimentelle Implementierung von
RTPSenderundRTPReceiverin Zusammenarbeit mitRTCPeerConnectionwurde hinzugefügt (Firefox-Bug 1032835). - Anwendungsfensterfreigabe wurde zu
Navigator.getUserMedia()hinzugefügt (Firefox-Bug 1036653) undMediaTrackConstraintSetunterstützt jetztbrowserWindowundscrollWithPage, um es zu ermöglichen, den Tab eines Fensters auszuwählen, das geteilt werden soll, ohne das Tab-Auswahldialogfeld anzuzeigen (Firefox-Bug 1041700). "browser"ist jetzt ein akzeptierter Wert von MediaSourceEnum, der zur Definition von Einschränkungen verwendet wird (Firefox-Bug 1041493).
- Eine experimentelle Implementierung von
-
Für Web Components ist die Ereignis-Retargeting jetzt implementiert (Firefox-Bug 887541).
-
Die
HeadersSchnittstelle wurde implementiert (Firefox-Bug 1029620). Sie wird durch die Voreinstellungdom.fetch.enabledkontrolliert, die standardmäßig auffalsegesetzt ist. -
Bezüglich unserer experimentellen Implementierung von Web-Animationen wurde die Schnittstelle
AnimationEffecthinzugefügt, mit der einzigen EigenschaftAnimationEffect.name(Firefox-Bug 1045993). Web-Animationen sind nicht standardmäßig aktiviert und werden durch die Voreinstellungdom.animations-api.core.enabledgesteuert. -
CSSOM-Ansichtsmethoden für sanftes Scrollen wurden hinzugefügt:
Window.scroll(),Window.scrollTo()undWindow.scrollBy()(Firefox-Bug 1022818). -
Das nicht standardmäßige
MozSmsSegmentInfoist nicht mehr im globalen Objekt sichtbar Firefox-Bug 916607.
MathML
Keine Änderung.
SVG
Keine Änderung.
Audio/Video
Keine Änderung.
Sicherheit und Netzwerk
- SSLv3 ist jetzt standardmäßig deaktiviert (Firefox-Bug 1030963).
- Eine Warnung wird an die Konsole gesendet, wenn eine Website die CSS-Direktive
reflected-xssverwendet (Firefox-Bug 1045902).
Änderungen für Add-on- und Mozilla-Entwickler
- localstore.rdf wurde entfernt (Firefox-Bug 559505).
Add-on SDK
Highlights
- Neue API: dev/panel ermöglicht es Ihnen, die Firefox-Entwicklertools zu erweitern.
- jpm Beta veröffentlicht.
"./my-file"überall als Alias fürrequire("sdk/self").data.url("my-file")eingeführt- Hinzugefügt die Möglichkeit, Stylesheets an individuelle Tabs anzuhängen.
Details
GitHub-Commits, die zwischen Firefox 33 und Firefox 34 gemacht wurden. Dies schließt keine Erhöhungen ein, die nach diesem Release in Aurora eingefügt wurden.
Fehler, die zwischen Firefox 33 und Firefox 34 behoben wurden. Dies schließt keine Erhöhungen ein, die nach diesem Release in Aurora eingefügt wurden.