Firefox 33 开发者发行说明
Firefox 33 于 2014 年 10 月 14 日发布。本文列出了对 Web 开发者、Firefox 和 Gecko 开发者以及插件开发者都有用的主要变更。
面向网络开发者的变更
开发者工具
亮点
- 事件监听器弹出窗口
- @media 侧边栏
- 添加新规则
- 编辑关键帧
- 三次贝塞尔编辑器
- 变换高亮
- 持久禁用缓存
- 新命令
- 编辑器偏好设置
- WebIDE
更多详情,请 参阅 hacks 文章。特别感谢 33 位贡献者为本次发布贡献了 所有功能和修复。
CSS
- 实现了
@counter-style规则(Firefox bug 966166)。 - 在
list-style-type中取消了ethiopic-numeric、persian、arabic-indic、devanagari、bengali、gurmukhi、gujarati、oriya、tamil、telugu、kannada、malayalam、thai、lao、myanmar、khmer、cjk-heavenly-stem、cjk-earthly-branch的前缀(Firefox bug 985825 和 Firefox bug 1063856)。 - 在
list-style-type中增加了对mongolian、disclosure-open和disclosure-closed计数器样式的支持(Firefox bug 982355 和 Firefox bug 1063856)。 - 修复了带有空关键帧规则的 CSS 动画,使其也能分发事件(Firefox bug 1004377)。
- 增加了对
rebeccapurple的支持,这是一个在 CSS Colors Level 4 中定义的新的<color>名称(Firefox bug 1024642)。 - 我们对 CSS Fonts Level 3 的实验性实现正在进展中。其激活由
layout.css.font-features.enabled偏好设置控制,在 Nightly 版本中默认启用。新实现的功能包括:font-variant-caps的回退算法,为缺失的字形创建合成替代(Firefox bug 961558)。- 实现了
font-synthesisCSS 属性(Firefox bug 871453)。
HTML
-
增加了对
<picture>元素的实验性支持(Firefox bug 870022),该功能由dom.image.picture.enabled偏好设置控制(默认关闭)。 -
<label>,尤其是没有for属性的<label>,不再适用于<input type=hidden>字段(Firefox bug 597650)。之前的行为不符合规范。 -
noreferrer链接注释已在<a>元素上实现。<a rel="noreferrer">在发送给服务器获取链接的 HTTP 请求中将不包含引用者 URL(Firefox bug 530396)。请注意,这仅适用于页面内链接,不适用于通过 UI 点击的链接,例如上下文菜单。 -
在 Android 上,已为
<meta>元素的name属性添加了对两个新值的支持:msapplication-TileImage和msapplication-TileColor(Firefox bug 1014712)。示例:html<meta name="msapplication-TileImage" content="images/my-img-144.png" /> <meta name="msapplication-TileColor" content="#d83434" />
JavaScript
- 已移除非标准方法
Number.toInteger()(Firefox bug 1022396)。 Map.prototype.set()、WeakMap.prototype.set()和Set.prototype.add()方法现在可以链式调用,返回其等效对象,不再返回undefined(Firefox bug 1031632)。- 默认参数在函数体内的函数声明之前进行求值,因此不能从默认参数中引用这些函数(Firefox bug 1022962)。
- 对象字面量现在允许使用简写属性:如果未显式定义,属性键将由同名变量初始化。例如,
function f(x, y) { return {x, y}; }等同于function f(x, y) { return {x: x, y: y}; }(Firefox bug 875002)。 yield和yield*的解析已更新,以符合最新的 ES2015 规范(Firefox bug 981599)。- 已移除非标准的
hasOwntrap(Firefox bug 980565)。
接口/API/DOM
- 已实现
RadioNodeListAPI,选中的单选按钮可通过RadioNodeList.value访问(Firefox bug 779723)。 - 已添加
DOMMatrix(Firefox bug 1018497)。 - 添加了一个非标准的(但在其他浏览器中已实现)
DOMException.stack属性。它返回一个字符串,包含人类可读的格式化堆栈(Firefox bug 857648),格式与现有的非标准Error.stack属性相同。 - 对于
<canvas>,实现了CanvasPattern.setTransform()方法,该方法允许使用线性变换的DOMMatrix表示来修改模式(Firefox bug 1019257)。 - 我们对 Media Source Extensions 的实验性实现,由
media.mediasource.enabled偏好设置控制,仅在 Nightly 和 Aurora 版本中默认启用,现在支持 MP4(Firefox bug 1000686)。 HTMLMediaElement.audioTracks和HTMLMediaElement.videoTracks属性已进行实验性实现。它们由media.track.enabled控制,默认关闭(Firefox bug 744896)。- 非标准的
XMLHttpRequest.mozBackgroundRequest()不再可从网站访问。只有 Firefox 内部代码(Chrome 代码)可以使用它(Firefox bug 1035242)。 - 已从规范中移除的
touchenter和touchleave事件已被移除(Firefox bug 1036444)。 - 在
HTMLTrackElement上发送的先前称为loaded的事件已重命名为load,以符合规范(Firefox bug 1035505)。 - IndexedDB 接口
FileHandle已重命名为IDBMutableFile(Firefox bug 1006485)。 - IndexedDB 接口
LockedFile已重命名为IDBFileHandle(Firefox bug 1006485)。 ServiceWorker接口已在dom.serviceWorkers.enabled标志下实现(Firefox bug 903441)。NetworkInformation.type现在也支持"unknown"值(Firefox bug 1023029)。
MathML
<mtable>元素的columnspacing、framespacing和rowspacing属性现在受支持(Firefox bug 330964)。- 对分数、堆叠、根号和脚本使用 Open Type MATH 常量(Firefox bug 961365)。
SVG
无更改。
音频/视频/WebRTC
- 在调用
RTCPeerConnection.createOffer()时用于提供选项的RTCOfferOptions字典已实现。
WebGL
- 现在公开了
EXT_blend_minmax。它通过添加两个新的混合方程来扩展混合功能:生成源和目标颜色的最小或最大颜色分量(Firefox bug 973815)。
安全
- CSP 1.1
frame-ancestors指令现在受支持(Firefox bug 846978)。
面向附加组件和 Mozilla 开发者的变更
- JavaScript Debugger Service (JSD) 已被移除,取而代之的是新的 Debugger API(Firefox bug 800200)。
- nsIX509CertDB2 接口已被移除,该接口的方法已移至 nsIX509CertDB 接口。
附加组件 SDK
亮点
- 通过 `Panel` 构造函数中的新选项,增加了对面板中上下文菜单的支持。
- 添加了 `tab.readyState`。
- 向 `sidebar.show()` 和 `sidebar.hide()` 添加了 `BrowserWindow` 参数,以控制将显示或隐藏侧边栏的窗口。
详情
Firefox 32 和 Firefox 33 之间的 GitHub 提交。这不包括此版本进入 Aurora 之后进行的任何更新。
Firefox 32 和 Firefox 33 之间的已修复 Bug。这不包括此版本进入 Aurora 之后进行的任何更新。