这篇翻译不完整。请帮忙从英语翻译这篇文章。
Firefox 35,基于 Gecko 35, 将会在 January 2015 正式发布。本文记录了开发者们应该注意的,该版本的 Firefox 的各种变化。
Web 开发者相关变更
开发者工具
Highlights:
- See ::before and ::after pseudo elements in the Page Inspector
- CSS source maps are now enabled by default
- "Show DOM Properties" from the Page Inspector
All devtools bugs fixed between Firefox 34 and Firefox 35.
CSS
mask-type
属性默认启用 (bug 1058519)。filter
属性默认启用 (bug 1057180)。@font-face
at-rule 支持 WOFF2 字体 (bug 1064737)。- 支持
symbol()
函数注解 (bug 966168)。 - 实现 CSS Font Loading API (bug 1028497)。
- 在下拉框上设置
-moz-appearance
为none
值,会移除下拉按钮 (bug 649849)。 - The property accessor
element.style["css-property-name"]
has been added to match other browsers (bug 958887).
HTML
- The obsolete and non-conforming
bottommargin
,leftmargin
,rightmargin
andtopmargin
attributes of the
have been activated in non-quirks mode (bug 95530).<body>
element
JavaScript
- The "temporal dead zone" for
let
declarations has been implemented. In conformance with ES6let
semantics, the following situations
now throw errors. See also this newsgroup announcement and bug 1001090.- Redeclaring existing variables or arguments using
let
within the same scope in function bodies is now a syntax error. - Using a variable declared using
let
in function bodies before the declaration is reached and evaluated is now a runtime error.
- Redeclaring existing variables or arguments using
- ES6
Symbols
(only available in the Nightly channel) have been updated to conform with recent specification changes:String(Symbol("1"))
now no longer throws aTypeError
; instead a string ("Symbol(1)"
) gets returned (bug 1058396).
- The various TypedArray constructors now have as their
[[Prototype]]
a single function, denoted%TypedArray%
in ES6 (but otherwise not directly exposed). Each typed array prototype now inherits from%TypedArray%.prototype
. (%TypedArray%
and%TypedArray%.prototype
inherit fromFunction.prototype
andObject.prototype
, respectively, so that typed array constructors and instances still have the properties found on those objects.) Typed array function properties now reside on%TypedArray%.prototype
and work on any typed array. See TypedArray and bug 896116 for more information. - ES6 semantics for prototype mutations using object literals have been implemented (bug 1061853).
- Now only a single member notated as
__proto__:value
will mutate the[[Prototype]]
in the object literal syntax. - Method members like
__proto__() {}
will not overwrite the[[Prototype]]
anymore.
- Now only a single member notated as
接口/APIs/DOM
- The
NavigatorLanguage
interface is now available to workers onWorkerNavigator
(bug 925849). - The
Element.closest
method returns the closest ancestor of the current element (bug 1055533). - Experimental support for the
CanvasRenderingContext2D.filter
property has been added behind thecanvas.filters.enabled
flag (bug 927892). - Our experimental implementation of Web Animations progresses with the landing of the
Animation.target
property. This always is behind the dom.animations-api.core.enabled pref, off by default (bug 1067701). - The
hasAttributes()
method has been moved fromNode
toElement
as required by the spec (1055773
). - Websockets can now be used in Workers (bug 504553).
- The
crossOrigin
reflected attribute ofHTMLImageElement
,HTMLLinkElement
,HTMLMediaElement
,HTMLScriptElement
, andSVGScriptElement
only accepts valid values, and""
isn't,null
has to be used instead (bug 880997). - The Resource Timing API has been activated by default (bug 1002855).
- To match the spec, the first argument of
Selection.containsNode()
cannot benull
anymore (bug 1068058). - The new
ImageCapture
API has been implemented:ImageCapture.takePhoto()
is available (bug 916643). - Non-HTTP
XHR
request now returns200
in case of success (instead of the erroneous0
) (bug 716491). - The internal, non-standard,
File.mozFullPath
property is no more visible from content (bug 1048293). - The constructor of
File
has been extended to match the specification (bug 10457483). - An experimental implementation of
AbortablePromise
, a promise that can be aborted by a different entity that the one who created it, has been added. It is prefixed withMoz
and controlled by thedom.abortablepromise.enabled
property, defaulting tofalse
(bug 1035060). - The non-standard
Navigator.mozIsLocallyAvailable
property has been removed (bug 1066826).
MathML
- The
dtls
OpenType feature (via the CSSfont-feature-settings
on the default stylesheet) is now applied automatically to MathML elements when positioning scripts over it (e.g. dotless i with mathematical hat).
SVG
无变化。
音频/视频
无变化。
网络 & 安全
- 支持 HTTP/2
alt-svc
header (bug 1003448)。 - 实现 HTTP (HPKP) 的 Public Key Pinning 扩展 (bug 787133)。
附加组件和 Mozilla 开发者相关的变更
XUL & 附加组件
- The private
_getTabForBrowser()
method on thetabbrowser
element has been deprecated. In its place, we've added a new, public, method calledgetTabForBrowser
. This returns, predictably, thetab
element that contains the specifiedbrowser
. Components.utils.now()
, matchingPerformance.now()
has been implemented for non-window chrome code (bug 969490).
Add-on SDK
Highlights
- 增加 上下文菜单的快捷键。
- 移除
BrowserWindow
的isPrivateBrowsing
明细
Firefox 34 到 Firefox 35 的 GitHub 提交. This will not include any uplifts made after this release entered Aurora.
Bugs fixed between Firefox 34 and Firefox 35. This will not include any uplifts made after this release entered Aurora.
以往版本
- Firefox 34 for developers
- Firefox 33 for developers
- Firefox 32 for developers
- Firefox 31 for developers
- Firefox 30 for developers
- Firefox 29 for developers
- Firefox 28 for developers
- Firefox 27 for developers
- Firefox 26 for developers
- Firefox 25 for developers
- Firefox 24 for developers
- Firefox 23 for developers
- Firefox 22 for developers
- Firefox 21 for developers
- Firefox 20 for developers
- Firefox 19 for developers
- Firefox 18 for developers
- Firefox 17 for developers
- Firefox 16 for developers
- Firefox 15 for developers
- Firefox 14 for developers
- Firefox 13 for developers
- Firefox 12 for developers
- Firefox 11 for developers
- Firefox 10 for developers
- Firefox 9 for developers
- Firefox 8 for developers
- Firefox 7 for developers
- Firefox 6 for developers
- Firefox 5 for developers
- Firefox 4 for developers
- Firefox 3.6 for developers
- Firefox 3.5 for developers
- Firefox 3 for developers
- Firefox 2 for developers
- Firefox 1.5 for developers