NotRestoredReasonDetails: reason 属性

实验性: 这是一个 实验性技术
在生产环境中使用之前,请仔细查看 浏览器兼容性表

reasonNotRestoredReasonDetails 接口的只读属性,它返回一个字符串,描述阻止页面使用后退/前进缓存 (bfcache) 的原因。

一个字符串。

阻止的原因有很多,浏览器可以选择根据其操作方式来实现自己的特定阻止原因。开发者应避免依赖于原因的特定措辞,并准备好处理新原因的添加和删除。

规范中列出的初始值是

"fetch"

在卸载期间,当前文档发起的获取(例如,通过 fetch())在进行中时被取消。因此,页面没有处于可以存储在 bfcache 中的稳定状态。

"lock"

在卸载期间,已持有的锁和锁请求被终止,因此页面没有处于可以存储在 bfcache 中的稳定状态。

"masked"

出于隐私目的,确切的原因被隐藏。此值可能表示以下情况之一:

  • 当前文档包含跨域 <iframe> 中的子元素,它们阻止了在 bfcache 中存储。
  • 当前文档无法出于用户代理特定的原因存储在 bfcache 中。

创建当前文档的原始导航出错,并阻止了将生成的错误文档存储在 bfcache 中。

"parser-aborted"

当前文档从未完成其初始 HTML 解析,并且阻止了将未完成的文档存储在 bfcache 中。

"websocket"

在卸载期间,打开的 WebSocket 连接被关闭,因此页面没有处于可以存储在 bfcache 中的稳定状态。

一些浏览器可能使用其他阻止原因,例如

"unload-listener"

页面注册了 unload 处理程序,这阻止了 bfcache 的使用。这将作为一个有用的警告,因为 unload 已被弃用。有关详细信息,请参阅 使用说明

"response-cache-control-no-store"

页面使用 no-store 作为 Cache-Control 标头值。

该页面是从另一个仍然引用该页面的页面打开的,例如使用“重复选项卡”功能。

示例

有关示例,请参阅 监控 bfcache 阻止原因

规范

规范
HTML 标准
# dom-not-restored-reason-details-reason

浏览器兼容性

BCD 表仅在启用 JavaScript 的浏览器中加载。

另请参阅