Firefox 35 开发者版
Firefox 35 于 2015 年 1 月 13 日发布。本文列出了对 Web 开发者、Firefox 和 Gecko 开发者以及附加组件开发者有用的关键变更。
针对 Web 开发者的变更
开发者工具
CSS
mask-type
属性现在默认启用 (Firefox 错误 1058519).filter
属性现在默认启用 (Firefox 错误 1057180).@font-face
at 规则现在支持 WOFF2 字体 (Firefox 错误 1064737).symbols()
函数表示法现在受支持 (Firefox 错误 966168).- CSS 字体加载 API 已实现 (Firefox 错误 1028497).
- 在下拉列表上使用
-moz-appearance
且值为none
时,现在将删除下拉按钮 (Firefox 错误 649849). - 已添加属性访问器
element.style["css-property-name"]
以匹配其他浏览器 (Firefox 错误 958887).
HTML
- 已在非怪异模式下激活
<body>
元素的已弃用且不符合标准的bottommargin
、leftmargin
、rightmargin
和topmargin
属性 (Firefox 错误 95530).
JavaScript
- 已实现
let
声明的时态死区。根据 ES2015let
语义,以下情况现在将引发错误。另请参阅此 新闻组公告 和 Firefox 错误 1001090。- 在函数体内的同一作用域中使用
let
重新声明现有变量或参数现在是语法错误。 - 在函数体内到达并评估声明之前使用使用
let
声明的变量现在是运行时错误。
- 在函数体内的同一作用域中使用
- ES2015
Symbol
(仅在 Nightly 频道中可用)已更新为符合最新的规范变更String(Symbol("1"))
现在不再引发TypeError
;而是返回一个字符串 ("Symbol(1)"
) (Firefox 错误 1058396).
- 各种 TypedArray 构造函数 现在在其
[[Prototype]]
中具有一个单一函数,在 ES2015 中表示为%TypedArray%
(但在其他情况下不会直接公开)。每个类型化数组原型现在都继承自%TypedArray%.prototype
。(%TypedArray%
和%TypedArray%.prototype
分别继承自Function.prototype
和Object.prototype
,因此类型化数组构造函数和实例仍然具有在这些对象上找到的属性。)类型化数组函数属性现在位于%TypedArray%.prototype
上,并在任何类型化数组上都能正常工作。有关更多信息,请参阅 TypedArray 和 Firefox 错误 896116。 - 已实现 ES2015 语义,用于使用对象字面量 对原型进行修改 (Firefox 错误 1061853).
- 现在,只有记为
__proto__:value
的单个成员才会修改对象字面量语法中的[[Prototype]]
。 - 方法成员(如
__proto__() {}
)不再覆盖[[Prototype]]
。
- 现在,只有记为
接口/API/DOM
navigator.language
和navigator.languages
现在可供WorkerNavigator
上的 worker 使用 (Firefox 错误 925849).Element.closest()
方法返回当前元素的最近祖先 (Firefox 错误 1055533).- 已在
canvas.filters.enabled
标志后添加对CanvasRenderingContext2D.filter
属性的实验性支持 (Firefox 错误 927892). - 我们的 Web 动画实验性实现随着
Animation.target
属性的加入而取得进展。此属性始终处于dom.animations-api.core.enabled
首选项之后,默认情况下处于关闭状态 (Firefox 错误 1067701). hasAttributes()
方法已从Node
移动到Element
,如规范要求 (Firefox 错误 1055773).HTMLImageElement
、HTMLLinkElement
、HTMLMediaElement
、HTMLScriptElement
和SVGScriptElement
的crossOrigin
反射属性仅接受有效值,而""
不属于有效值,需要使用null
代替 (Firefox 错误 880997).- 资源计时 API 现在默认启用 (Firefox 错误 1002855).
- 为了匹配规范,
Selection.containsNode()
的第一个参数现在不能再为null
(Firefox 错误 1068058). - 已实现新的
ImageCapture
API:ImageCapture.takePhoto()
可用 (Firefox 错误 916643). - 非 HTTP
XMLHttpRequest
请求现在在成功时返回200
(而不是错误的0
) (Firefox 错误 716491). XMLHttpRequest.responseURL
已根据最新的规范进行了调整,不包括 URL 的片段 ('#xyz'
)(如果适用) (Firefox 错误 1073882).- 内部、非标准的
File.mozFullPath
属性不再从内容中可见 (Firefox 错误 1048293). File
的构造函数已扩展以匹配规范 (Firefox 错误 1047483).- 已添加
AbortablePromise
的实验性实现,这是一种承诺,可以被与创建承诺的实体不同的实体中止。它以Moz
为前缀,并由dom.abortablepromise.enabled
属性控制,默认值为false
(Firefox 错误 1035060). - 已删除非标准的
Navigator.mozIsLocallyAvailable
属性 (Firefox 错误 1066826). - 已删除首选项
network.websocket.enabled
(默认值为true
);Websocket API 现在无法再停用 (Firefox 错误 1091016). - 已删除
Crypto
的非标准方法和属性 (Firefox 错误 1030963)。只保留了标准 WebCrypto API 中定义的方法和属性。 - 我们的 WebGL 2.0 实验性实现正在取得进展!
MathML
dtls
OpenType 功能(通过默认样式表上的 CSSfont-feature-settings
)现在在将脚本定位在其上时自动应用于 MathML 元素(例如,带数学帽子的无点 i)。
SVG
无变更。
音频/视频
无变更。
网络与安全
- 已实现并激活 HTTP/2,仅使用 AEAD 密码 (Firefox 错误 1027720 和 Firefox 错误 1047594).
- 现在支持 HTTP/2
alt-svc
标头 (Firefox 错误 1003448). - 已实现用于 HTTP 的公钥固定扩展 (HPKP) (Firefox 错误 787133).
- 现在支持 CSP 1.1
base-uri
指令 (Firefox 错误 1045897). - 现在,在 CSP 中发生主机源匹配时,也会考虑源的路径 (Firefox 错误 808292).
针对附加组件和 Mozilla 开发者的变更
XUL 与附加组件
- 已弃用
<xul:tabbrowser>
元素上的私有_getTabForBrowser()
方法。取而代之的是,我们添加了一个新的公共方法,称为getTabForBrowser
。顾名思义,该方法返回包含指定<xul:browser>
的<xul:tab>
元素。 - 已为非窗口 chrome 代码实现
Components.utils.now()
,与Performance.now()
相匹配 (Firefox 错误 969490).
附加组件 SDK
重点
- 为上下文菜单添加了访问键。
- 已从
BrowserWindow
中删除isPrivateBrowsing
。 - 已将
toJSON
方法添加到URL
实例。
详情
Firefox 34 和 Firefox 35 之间的 GitHub 提交。这将不包括此版本进入 Aurora 后进行的任何升级。
Firefox 34 和 Firefox 35 之间修复的错误。这将不包括此版本进入 Aurora 后进行的任何升级。
旧版本
- 面向开发者的 Firefox 34
- 面向开发者的 Firefox 33
- 面向开发者的 Firefox 32
- 面向开发者的 Firefox 31
- 面向开发者的 Firefox 30
- 面向开发者的 Firefox 29
- 面向开发者的 Firefox 28
- 面向开发者的 Firefox 27
- 面向开发者的 Firefox 26
- 面向开发者的 Firefox 25
- 面向开发者的 Firefox 24
- 面向开发者的 Firefox 23
- 面向开发者的 Firefox 22
- 面向开发者的 Firefox 21
- 面向开发者的 Firefox 20
- 面向开发者的 Firefox 19
- 面向开发者的 Firefox 18
- 面向开发者的 Firefox 17
- 面向开发者的 Firefox 16
- 面向开发者的 Firefox 15
- 面向开发者的 Firefox 14
- 面向开发者的 Firefox 13
- 面向开发者的 Firefox 12
- 面向开发者的 Firefox 11
- 面向开发者的 Firefox 10
- 面向开发者的 Firefox 9
- 面向开发者的 Firefox 8
- 面向开发者的 Firefox 7
- 面向开发者的 Firefox 6
- 面向开发者的 Firefox 5
- 面向开发者的 Firefox 4
- 面向开发者的 Firefox 3.6
- 面向开发者的 Firefox 3.5
- 面向开发者的 Firefox 3
- 面向开发者的 Firefox 2
- 面向开发者的 Firefox 1.5