Firefox 21 开发者发行说明

Firefox 21 于 2013 年 5 月 14 日发布。本文档列出了不仅对 Web 开发者有用,对 Firefox 和 Gecko 开发者以及附加组件开发者也有用的关键更改。

面向网络开发者的变更

HTML

  • 已将 scoped 属性添加到 <style> 元素。它允许包含与文档其余部分隔离的样式。此类样式可以使用 Firefox 20 中引入的 :scope CSS 伪元素进行选择。(Firefox bug 508725)。
  • 已实现新的 HTML <main> 元素(Firefox bug 820508)。

JavaScript

  • 已移除 ECMAScript for XML (E4X),这是一个古老的 JavaScript 扩展。它仅在 Gecko 中实现,并未获得显著关注(Firefox bug 788293)。
  • parseInt 不再将带有前导 "0" 的字符串视为八进制(Firefox bug 786135)。

CSS

DOM

SVG

网络

  • 我们将继续更新我们的 CSP 实现,以匹配已达到候选推荐阶段的 CSP 1.0 规范。
    • 已添加对符合规范的 Content-Security-Policy HTTP 标头(除了实验性的 X-Content-Security-Policy)的支持(Firefox bug 783049)。

      注意:此新标头的补丁已合并到 Firefox 21 中,但在构建版本中已禁用(Firefox bug 842657)。

Worker

面向附加组件和 Mozilla 开发者的变更

  • FUEL 应用程序不再可以使用 Livemarks 服务(Firefox bug 834492)。Livemarks 服务已弃用,并逐步淘汰,以便使用新的异步接口。

  • resource:///modules/resource://gre/modules/ 不再相同(Firefox bug 755724)。此更改是由于对 Firefox 的 metro 版本所做的工作。如果您使用 resource:///modules/ 加载模块,您现在应该检查是否要改用 resource://gre/modules/。请注意,一些模块也从 Firefox 移动到了 Toolkit(Firefox bug 840287Firefox bug 811548 分别移动了 NewTabUtils.jsm 和缩略图模块)。

  • Add-on SDK 现在包含在 Firefox 中(Firefox bug 731779

  • History API 移除了大量已弃用的 API

    • 已被 mozIAsyncFavicons 替换

      • nsIFaviconService::setFaviconUrlForPage
      • nsIFaviconService::setFaviconData
      • nsIFaviconService::getFaviconData
      • nsIFaviconService::getFaviconForPage
      • nsIFaviconService::setAndLoadFaviconForPage
      • nsIFaviconService::getFaviconImageForPage
      • nsIFaviconService::getFaviconDataAsDataURL
    • 已被 mozIAsyncLivemarks 替换

      • nsILivemarkService::*
      • PlacesUtils.itemIsLivemark
      • PlacesUtils.nodeIsLivemarkContainer
      • PlacesUtils.nodeIsLivemarkItem
    • 仅移除了第三个参数

      • PlacesUIUtils.showBookmarkDialog
    • 不再由 Places 实现,请改用 mozIAsyncHistory

      • nsIGlobalHistory2::addURI
      • nsIGlobalHistory2::isVisited
      • nsIGlobalHistory2::setPageTitle
    • 不再需要,请改用 onDeleteURIonItemRemoved

      • nsINavHistoryObserver::OnBeforeDeleteURI
      • nsINavBookmarkObserver::OnBeforeItemRemoved
    • 从未正确实现

      • nsINavHistoryFullVisitResultNode
    • 已弃用,请改用 mozIAsyncHistory::updatePlaces

      • nsINavHistoryService::AddVisit
  • 添加了 nsIHttpChannel.redirectTo 以启用 HTTP 渠道的重定向,无需脆弱的 hack。

另见