Firefox 11 开发者版

Firefox 11 于 2012 年 3 月 13 日发布。本文提供了有关此版本中的新功能和关键错误修复的信息,以及指向针对 Web 开发者和附加组件开发者的更详细文档的链接。

针对 Web 开发者的更改

HTML

DOM

CSS

JavaScript

无变化。

SVG

  • SVGSVGElement DOM 接口现在支持 getElementById 方法。

WebSocket

  • WebSocket API 现在支持二进制消息(请参阅 Firefox 错误 676439)。
  • 协议和 API 都已更新到规范的最新草案,API 已取消前缀(请参阅 Firefox 错误 666349Firefox 错误 695635)。
  • 以前,在 Firefox 中使用 WebSocket 发送和接收的消息大小限制为 16 MB;现在它们可以达到 2 GB(尽管内存容量限制可能阻止它们变得那么大,Firefox 支持它)。

IndexedDB

  • 已添加对 IDBFactory.cmp() 的支持。
  • 一个 IndexedDB 键 也可以是以下类型之一:日期、数组和浮点数(不仅仅是字符串和整数)。
  • 从现在起,事务会在创建事务时开始,而不是在放置第一个请求时开始;例如,考虑以下代码
    js
    var trans1 = db.transaction("foo", READ_WRITE);
    var trans2 = db.transaction("foo", READ_WRITE);
    
    trans2.put("2", "key");
    trans1.put("1", "key");
    
    代码执行后,对象存储应包含值“2”,因为 trans2 应在 trans1 之后运行。
  • 在 Firefox 11 之前,对象存储 autoIncrement 计数器在给定数据库的所有对象存储中共享,而根据规范,每个对象存储应具有独立的计数器。现在已修复此问题。
  • 现在可以使用 keyPath 创建索引
  • 现在可以创建多条目索引(请参阅 IDBObjectStore.createIndex 参数)。
  • abort 事件现在会冒泡;此外,还添加了 onabort 处理程序。
  • IndexedDB 现在可以用于存储文件/Blob。
  • IndexedDB 现在支持复杂键路径,例如 foo.bar 以访问属性 foo 的属性 bar
  • IndexedDB 现在可以在创建 对象存储索引 时接受数组作为 keyPathFirefox 错误 694138)。

网络

开发者工具

针对 Mozilla 和附加组件开发者的更改

JavaScript 代码模块

NetUtil.jsm

  • readInputStreamToString() 具有一个新的可选参数,用于在读取输入流时配置字符集解释。

新的 JavaScript 代码模块

source-editor.jsm

提供了一个方便易用的源代码编辑器,您可以在附加组件中使用它。这与 Scratchpad 和集成到 Firefox 的其他开发者工具中使用的编辑器相同。

接口更改

  • mozIAsyncHistory 接口有一个新的方法 mozIAsyncHistory.isURIVisited() 用于检查 URI 是否已被访问。
  • 已添加一个新的接口 mozIVisitStatusCallback,以提供 mozIAsyncHistory.isURIVisited() 的回调处理功能。
  • nsIMacDockSupport 接口现在支持使用其新的 badgeText 属性在 Dock 中将文本徽章添加到应用程序图标。
  • nsINavHistoryResultObserver 接口中,您现在需要实现 nsINavHistoryResultObserver.containerStateChanged(),而不是已弃用的 containerOpened()containerClosed() 方法。

已移除的接口

以下接口是不再需要的实现细节

  • nsICharsetResolver
  • nsIDOMNSElement,请参阅 bug707576,请改用 nsIDOMElement
  • omni.jar 文件现在称为 omni.ja

首选项更改

ui.tooltipDelay

指定鼠标光标开始悬停到显示工具提示之间的延迟时间(以毫秒为单位)。

构建系统更改

  • 已删除--enable-tracejit构建选项。

其他更改

  • 长时间未更新的附加组件默认不再被认为是兼容的;目前这适用于maxVersion为 4.0 的附加组件。

另请参阅