Firefox 34 开发者发布说明
Firefox 34 于 2014 年 12 月 1 日发布。本文档列出了对 Web 开发者、Firefox 和 Gecko 开发者以及附加组件开发者都有用的主要更改。
面向网络开发者的变更
开发者工具
亮点
CSS
-
我们对 CSS Fonts Level 3 的实验性实现正在取得进展。新实现的功能包括
font-variant-position的回退算法,根据字体提供的下标和上标指标创建缺失字形的合成替代项(Firefox bug 1024804)。layout.css.font-features.enabled首选项已被移除,这意味着以下属性已默认激活:- CSS Font Level 3 版本的
font-variant,它现在是一个简写属性。 - 长属性
font-variant-caps、font-variant-numeric、font-variant-position、font-variant-east-asian、font-variant-ligatures和font-variant-alternates。 - 属性
font-kerning和font-synthesis - 属性
font-feature-settings和font-language-override已去除前缀。为了便于过渡,一段时间内仍可使用带前缀的版本。
- CSS Font Level 3 版本的
-
min-width和min-height中添加了auto值,其行为与上次不同(Firefox bug 984711 和 Firefox bug 1015474)。 -
已实现
filter属性的 filter 函数值,这是一个实验性实现,默认禁用。它由layout.css.filters.enabled首选项控制(Firefox bug 948265)。 -
修复了 CSS 过渡与
display、position、overflow等属性的更改同时开始的问题(Firefox bug 625289)。
HTML
无更改。
JavaScript
-
已实现 ES2015 语法的对象字面量中的计算属性名(Firefox bug 924688)。
- 这包括 getter 和 setter 方法名(Firefox bug 1048384),并且也可以与解构一起使用。
-
已实现 ES2015 对象中定义方法的简写语法(Firefox bug 924672)。
-
已实现 ES2015
Object方法Object.assign()(Firefox bug 937855)。 -
现在支持 ES2015 模板字符串和
String.raw()方法(Firefox bug 1038259,Firefox bug 1039774)。 -
添加了一个新的 ES2015 对象
WeakSet(Firefox bug 792439)。 -
ES2015 Symbols(仅在 Nightly 通道可用)已更新,以符合最新的规范更改(Firefox bug 1042602)。
- 尝试将 Symbol 转换为数字时,现在会抛出
TypeError。 - 使用松散相等时,
Object(sym) == sym现在返回true。
- 尝试将 Symbol 转换为数字时,现在会抛出
-
实验性的
TypedArray.prototype.move()方法(仅在之前的 Nightly 和 Aurora 通道可用)已被现已实现的标准 ES2015TypedArray.prototype.copyWithin()方法取代(Firefox bug 1021379)。 -
在严格模式下,按照 ES2015 规范,在对象字面量中设置重复的属性名将不再抛出
SyntaxError(Firefox bug 1041128)。 -
在正则表达式(包括
String.replace)中,当捕获组由于量词阻止而未被访问时,匹配文本现在是undefined而不是空字符串(参见 Firefox bug 369778 和 此示例代码)。请注意,由于 Web 兼容性,RegExp.$N 仍将返回空字符串(Firefox bug 1053944)。 -
ES2015 扩展运算符现在支持解构(Firefox bug 933276)。
-
解构现在使用迭代器协议而不是类数组协议(Firefox bug 933276)。
-
已实现
Proxy.revocable()(Firefox bug 978279)。
接口/API/DOM
-
已添加
Element.matches()方法;它执行非标准mozMatchesSelector()的功能(Firefox bug 886308)。 -
Performance.now()方法现在可供 Web Worker 使用(Firefox bug 908390)。 -
非标准的
MozNamedAttrMap接口已重命名为标准的NamedNodeMap,并且Element.attributes已更新为使用它(Firefox bug 1055467)。 -
已添加
Path2D.addPath()方法(Firefox bug 985801)。 -
非标准的设备存储 API 现在也对安装在 Android 上的特权应用启用(Firefox bug 886627)。
-
Web Crypto API 已默认启用(Firefox bug 1074001)。
-
已添加
MediaStreamTrack.stop()方法(Firefox bug 1057955)。 -
我们对 EME 的实验性实现仍在继续。已添加
MediaKeySession.getUsableKeyIds()方法(Firefox bug 1057171)。 -
关于 WebRTC
RTPSender和RTPReceiver与RTCPeerConnection协同工作的实验性实现已完成(Firefox bug 1032835)。- 已向
Navigator.getUserMedia()添加应用程序窗口共享(Firefox bug 1036653),并且MediaTrackConstraintSet现在支持browserWindow和scrollWithPage,允许选择要共享的窗口的选项卡,而无需显示选项卡选择器对话框(Firefox bug 1041700)。 "browser"现在是 MediaSourceEnum 的一个接受值,用于定义约束(Firefox bug 1041493)。
-
对于 Web Components,事件重新定向现已实现(Firefox bug 887541)。
-
已实现
Headers接口(Firefox bug 1029620)。它由dom.fetch.enabled首选项控制,该首选项默认设置为false。 -
关于我们对 Web Animations 的实验性实现,已添加
AnimationEffect接口,其中包含唯一的AnimationEffect.name属性(Firefox bug 1045993)。Web Animations 默认未激活,由dom.animations-api.core.enabled首选项控制。 -
已添加 CSSOM View 的平滑滚动方法:
Window.scroll()、Window.scrollTo()和Window.scrollBy()(Firefox bug 1022818)。 -
非标准的
MozSmsSegmentInfo不再在全局对象上可见(Firefox bug 916607)。
MathML
无更改。
SVG
无更改。
音频/视频
无更改。
安全与网络
- SSLv3 现在默认禁用(Firefox bug 1030963)。
- 当网站使用 CSS
reflected-xss指令时,会向控制台发送警告(Firefox bug 1045902)。
面向附加组件和 Mozilla 开发者的变更
- 已移除 localstore.rdf(Firefox bug 559505)。
附加组件 SDK
亮点
- 新 API:
dev/panel使您能够扩展 Firefox 开发者工具。 jpmbeta 版发布。- 在所有地方引入
"./my-file"作为require("sdk/self").data.url("my-file")的别名。 - 添加了将样式表附加到单个选项卡的能力。
详情
GitHub 提交记录(Firefox 33 和 Firefox 34 之间)。这不包括此版本进入 Aurora 后进行的任何更新。
已修复的 Bug(Firefox 33 和 Firefox 34 之间)。这不包括此版本进入 Aurora 后进行的任何更新。