sessions

使用 sessions API 可以列出和恢復瀏覽器執行時已關閉的標籤頁和視窗。

sessions.getRecentlyClosed() 函式返回一個包含 tabs.Tabwindows.Window 物件的陣列,這些物件代表自瀏覽器執行以來已關閉的標籤頁和視窗,最多可達 sessions.MAX_SESSION_RESULTS 中定義的數量。

您可以使用 sessions.restore() 函式來恢復視窗或標籤頁。恢復操作不僅僅是重新開啟標籤頁,它還會恢復標籤頁的導航歷史,以便前進/後退按鈕能夠正常工作。

此 API 還提供了一組函式,允許擴充套件程式儲存與標籤頁或視窗關聯的附加狀態。然後,如果標籤頁或視窗被關閉並隨後恢復,擴充套件程式就可以檢索該狀態。例如,一個標籤頁分組擴充套件程式可能會使用此功能來記住一個標籤頁屬於哪個分組,以便在使用者恢復標籤頁時將其恢復到正確的分組中。

要使用 sessions API,您必須擁有 "sessions" API 許可權

型別

sessions.Filter

允許您限制呼叫 sessions.getRecentlyClosed() 時返回的 Session 物件的數量。

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

當標籤頁或視窗關閉時觸發。

擴充套件程式示例

瀏覽器相容性

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