sessions.restore()
Восстанавливает закрытую вкладку или окно. Восстановление не просто повторно открывает вкладку или окно: оно также восстанавливает историю навигации вкладки, поэтому кнопки "Назад" и "Вперёд" будут работать. Восстановление окна восстановит все вкладки, которые содержались в окне при его закрытии.
Это асинхронная функция, которая возвращает Promise.
Синтаксис
let restoringSession = browser.sessions.restore( sessionId // string )
Параметры
sessionId-
string. Строка, содержащая идентификатор сеанса для окна или вкладки, которые необходимо восстановить. Его можно найти в свойствеsessionIdобъектаTabилиWindowв объектеSession, возвращаемом изsessions.getRecentlyClosed().
Возвращаемое значение
Совместимость с браузерами
| Рабочий стол | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | |
restore |
Да | 79 | 52 | ? | Да | Нет | ? | ? | Нет | ? | Нет | ? |
Примеры
Это восстанавливает самый недавно закрытый сеанс, будь то окно или вкладка:
function restoreMostRecent(sessionInfos) { if (!sessionInfos.length) { console.log("No sessions found") return; } let sessionInfo = sessionInfos[0]; if (sessionInfo.tab) { browser.sessions.restore(sessionInfo.tab.sessionId); } else { browser.sessions.restore(sessionInfo.window.sessionId); } } function onError(error) { console.log(error); } browser.browserAction.onClicked.addListener(() => { let gettingSessions = browser.sessions.getRecentlyClosed({ maxResults: 1 }); gettingSessions.then(restoreMostRecent, onError); });
Примечание: Этот API основан на API chrome.sessions Chromium.
Известные проблемы
Ошибка 1538119 - Дублирующийся sessionId в browser.sessions.getRecentlyClosed() после "Восстановить предыдущий сеанс"
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/sessions/restore