会话
使用会话 API 列出和恢复浏览器运行期间已关闭的选项卡和窗口。
该 sessions.getRecentlyClosed()
函数返回一个 tabs.Tab
和 windows.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。