会话

使用会话 API 列出和恢复浏览器运行期间已关闭的选项卡和窗口。

sessions.getRecentlyClosed() 函数返回一个 tabs.Tabwindows.Window 对象数组,表示自浏览器运行以来已关闭的选项卡和窗口,最多为 sessions.MAX_SESSION_RESULTS 中定义的最大值。

然后,您可以使用 sessions.restore() 函数恢复窗口或选项卡。恢复不仅仅是重新打开选项卡:它还会恢复选项卡的导航历史记录,以便前后按钮可以正常工作。

此 API 还提供一组函数,使扩展能够存储与选项卡或窗口关联的其他状态。然后,如果选项卡或窗口关闭并随后恢复,扩展可以检索该状态。例如,选项卡分组扩展可以使用此功能来记住选项卡所属的组,以便在用户恢复选项卡时将其恢复到正确的组。

要使用会话 API,您必须拥有“会话” API 权限

类型

sessions.Filter

使您能够限制 Session 对象的数量,这些对象由对 sessions.getRecentlyClosed() 的调用返回。

sessions.Session

表示用户在当前浏览会话中关闭的选项卡或窗口。

属性

sessions.MAX_SESSION_RESULTS

sessions.getRecentlyClosed() 的调用将返回的会话最大数量。

函数

sessions.forgetClosedTab()

从浏览器最近关闭的选项卡列表中删除已关闭的选项卡。

sessions.forgetClosedWindow()

从浏览器最近关闭的窗口列表中删除已关闭的窗口。

sessions.getRecentlyClosed()

返回一个 Session 对象数组,表示在当前浏览会话中关闭的窗口和选项卡(即:自浏览器启动以来的时间)。

sessions.restore()

恢复已关闭的选项卡或窗口。

sessions.setTabValue()

存储与给定选项卡关联的键/值对。

sessions.getTabValue()

根据其键检索给定选项卡先前存储的值。

sessions.removeTabValue()

从给定选项卡中删除键/值对。

sessions.setWindowValue()

存储与给定窗口关联的键/值对。

sessions.getWindowValue()

根据其键检索给定窗口先前存储的值。

sessions.removeWindowValue()

从给定窗口中删除键/值对。

事件

sessions.onChanged

选项卡或窗口关闭时触发。

浏览器兼容性

BCD 表格仅在浏览器中加载

示例扩展

注意:此 API 基于 Chromium 的 chrome.sessions API。