开发者版 Firefox 19
Firefox 19 于 2013 年 2 月 19 日发布。本文列出了对 Web 开发人员、Firefox 和 Gecko 开发人员以及附加组件开发人员都很有用的关键更改。
针对 Web 开发者的更改
JavaScript
Map
和Set
对象已从具有size()
方法更改为具有size
属性 (Firefox 错误 807001)Map
和Set
对象现在还具有clear()
方法。(Firefox 错误 805003)
CSS
- 已支持视口相关的
<length>
单位,vh
、vw
、vmin
和vmax
(Firefox 错误 503720) - CSS Flexbox 已取消前缀,但默认情况下仍处于禁用状态 (Firefox 错误 801098).
-moz-initial
值已取消前缀 (Firefox 错误 806068).-moz-initial
将作为别名保留一段时间;但是,强烈建议作者切换到initial
。- CSS
text-transform
属性现在支持full-width
关键字,这允许更无缝地将拉丁字符包含在使用表意固定宽度字符(如中文或日语)的文本中 (Firefox 错误 774560). - CSS
page-break-inside
已实现 (Firefox 错误 685012). - CSS
calc()
函数现在可以在<color-stop>
(在<gradient>
上)使用。 - CSS
@page
at-rule 现在已受支持 (Firefox 错误 115199). 请注意,伪类:first
、:right
和:left
尚未实现。 :-moz-placeholder
伪类已替换为::-moz-placeholder
伪元素 (Firefox 错误 737786).- 根据规范,现在忽略了在
@keyframes
中出现的以!important
限定的声明 (Firefox 错误 784466).
DOM/API
Element.getElementsByTagName
、Element.getElementsByTagNameNS
和Element.getElementsByClassName
方法现在返回一个实时的HTMLCollection
(Firefox 错误 799464).- 已实现
File
mozLastModifiedDate
属性。(Firefox 错误 793955) - 当上次修改日期未知时,
File
lastModifiedDate 属性返回当前日期。(Firefox 错误 793459) - 已实现
CanvasRenderingContext2D
isPointInStroke
方法 (Firefox 错误 803124). - 已实现
HTMLCanvasElement
toBlob
方法 (Firefox 错误 648610). Node.isSupported
和document.implementation.hasFeature()
方法已更改为始终返回true
(Firefox 错误 801425).- 调用
document.createElement(null)
时,null
现在将被转换为字符串,并且效果与document.createElement("null")
相同。 TextDecoder
和TextEncoder
接口已更新以匹配最新的规范 (Firefox 错误 801487).
XForms
Firefox 19 中已 删除 对 XForms 的支持。
针对附加组件和 Mozilla 开发者的更改
注意:Firefox 19 中的一项关键更改是 nsresult
现在是强类型。这将有助于更轻松地检测由错误处理返回值引起的错误,但如果现有代码在这方面做出了不正确的假设,则可能会导致现有代码中断。
getBrowserSelection()
现在返回文本输入字段中的选定文本。因此,当用户在非密码字段的文本输入字段中选择文本时,gContextMenu.isTextSelected
将为true
。(Firefox 错误 565717)- Dict.jsm:
Dict()
现在采用 JSON 字符串。添加了Dict.toJSON()
,它返回 JSON 字符串。(Firefox 错误 727967)
接口更改
nsIImgLoadingContent
-
addObserver()
方法的参数 (aObserver) 从imgIDecoderObserver
更改为imgINotificationObserver
。imgINotificationObserver
的notify()
方法不可脚本化,因此您需要使用imgITools
中的createScriptedObserver()
。 nsIChannel
-
contentLength
属性已从long
更改为int64_t
。