HTMLFencedFrameElement: config 属性

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

实验性: 这是一项实验性技术
在生产中使用此技术之前,请仔细检查浏览器兼容性表格

HTMLFencedFrameElement 接口的 config 属性包含一个 FencedFrameConfig 对象,该对象代表了 <fencedframe> 的导航,即它将显示什么内容。FencedFrameConfig 对象通常来自 Protected Audience API 等来源。

config 的初始值为 null

当其值被设置为一个 FencedFrameConfig 对象实例时,FencedFrameConfig 的内部属性(例如 mappedURL)将决定在关联的 <fencedframe> 中加载什么内容。此外

  • 导航类型将是 "replace"(参见 NavigateEvent.navigationType),这意味着当前历史记录条目将被新条目替换,而不是为其添加新的历史记录条目。
  • 导航的 Referrer-Policy 被设置为 "no-referrer"

示例

要设置 <fencedframe> 中将显示的内容,使用的 API(例如 Protected AudienceShared Storage)会生成一个 FencedFrameConfig 对象,然后将其设置为 <fencedframe>config 属性的值。

以下示例从 Protected Audience API 的广告竞价中获取一个 FencedFrameConfig,然后用于在 <fencedframe> 中显示中标广告

js
const frameConfig = await navigator.runAdAuction({
  // … auction configuration
  resolveToConfig: true,
});

const frame = document.createElement("fencedframe");
frame.config = frameConfig;

注意:必须将 resolveToConfig: true 传递给 runAdAuction() 调用才能获取 FencedFrameConfig 对象。如果未设置,结果的Promise 将解析为一个 URN,该 URN 只能在<iframe> 中使用。

规范

规范
围栏框架
# dom-htmlfencedframeelement-config

浏览器兼容性

另见