Firefox 119 为开发者发布的发行说明
本文档提供了关于 Firefox 119 中影响开发者的更改的信息。Firefox 119 于 2023 年 10 月 24 日发布。
Web 开发人员的变更
HTML
移除
<input>元素不再支持非标准的mozactionhint属性。请改用enterkeyhint。(有关更多详细信息,请参阅 Firefox bug 1735980。)
CSS
- 现在支持
attr()CSS 函数的回退值。如果全局属性缺失,这允许设置一个回退值。(请参阅 Firefox bug 1448248)。
JavaScript
- 现在支持用于对可迭代对象中的元素进行分组的
Object.groupBy()和Map.groupBy()静态方法(有关更多详细信息,请参阅 Firefox bug 1792650)。 String.prototype.isWellFormed()和String.prototype.toWellFormed()方法可分别用于检查字符串是否包含格式正确的 Unicode 文本(即,不包含孤立代理项)以及将格式不正确的字符串规范化为格式正确的 Unicode 文本。(有关更多详细信息,请参阅 Firefox bug 1850755)。
SVG
- 接受
<length>值的 SVG 属性现在支持所有 SVG 元素的 level 3<length>CSS 数据类型。这使得可以根据字体大小(cap、rem等)、视口(vh、vw、vmin等)或绝对长度(px、cm等)来调整 SVG 元素的大小,例如<line x1="10vw" y1="10vh" x2="50vw" y2="50vh"/>。(有关更多详细信息,请参阅 Firefox bug 1287054)。
HTTP
Cross-Origin-Embedder-PolicyHTTP 响应头中的credentialless指令现在已在桌面平台(以及 Android 以外的移动平台)上受支持,允许对尚未明确选择加入的跨域服务器的资源发出no-cors请求,尽管不包含 cookies 或其他凭证(Firefox bug 1851467)。
API
- 现在可以通过在传递给
WebTransport.createBidirectionalStream()和WebTransport.createUnidirectionalStream()的选项参数中包含sendOrder属性来指定发送流的相对优先级(Firefox bug 1816925)。 - 现在支持
AuthenticatorAttestationResponse接口的getAuthenticatorData()、getPublicKeyAlgorithm()和getPublicKey()方法(请参阅 Firefox bug 1816519 和 Firefox bug 1816520)。 Web Authentication API的凭据属性扩展(credProps)已得到支持,允许用户在创建/注册后查询凭据是否可发现(Firefox bug 1844437)。SubtleCrypto.deriveKey()方法现在支持将 HKDF 算法作为其derivedKeyType参数的选项(请参阅 Firefox bug 1851928)。- 现在支持
PublicKeyCredential接口的parseCreationOptionsFromJSON()、parseRequestOptionsFromJSON()和toJSON()方法。这些是用于将用于创建和共享凭据对象的对象转换为 JSON 表示形式的便捷方法,这些 JSON 表示形式可以被序列化/反序列化并与服务器共享(请参阅 Firefox bug 1823782)。
DOM
- 默认情况下,现在支持 ARIA 反射,用于不引用其他元素的属性;只有非 ID 引用属性会被反射。您现在可以直接通过 JavaScript API 获取和设置 DOM 元素上的 ARIA 属性,而不是使用
setAttribute和getAttribute。例如,现在支持buttonElement.ariaPressed = "true";,而不再仅支持buttonElement.setAttribute("aria-pressed", "true");(Firefox bug 1785412)。
WebDriver 一致性 (WebDriver BiDi, Marionette)
通用
-
在执行带有按下鼠标中键或右键的
pointerDown操作时,相关 HTML 元素发出的mousedown事件中的buttons属性值已互换(Firefox bug 1850086)。 -
在执行起源设置为
pointer的输入类型为wheel的scroll操作时,会不恰当地引发invalid argument错误,而根据当前的 WebDriver 规范,这种组合是不受支持的(Firefox bug 1850166)。
WebDriver BiDi
-
添加了
browsingContext.reload命令,该命令允许用户重新加载当前显示在给定浏览上下文中的页面或帧(Firefox bug 1830859)。 -
添加了
browsingContext.userPromptClosed事件,该事件在类型为alert、confirm或prompt的用户提示关闭时发出(Firefox bug 1824221)。 -
添加了
browsingContext.navigationStarted事件,该事件在 Firefox 开始新的导航时发出(Firefox bug 1756595)。 -
添加了
script.realmCreated和script.realmDestroyed事件,这些事件允许用户监控给定浏览上下文的 JavaScript Realms 的生命周期。这种 Realm 本质上是一个具有自己唯一全局对象(window)的隔离执行环境(sandbox)(Firefox bug 1788657,Firefox bug 1788659)。 -
当打开 HTTP 身份验证对话框时,
browsingContext.userPromptOpened事件会被意外发送(Firefox bug 1853302)。 -
带有
context字段设置为null的不必要事件将不再发出。因为底层浏览上下文已关闭,所以这些事件不再有效(Firefox bug 1847563)。
Marionette
- 使用
Addon:Install命令尝试安装 WebExtension 时可能出现的错误代码列表已更新,以匹配 Firefox 的最新错误代码(Firefox bug 1852537)。