Spec-Zone.ru › Web Extensions

Сеансы

Используйте API сеансов для перечисления и восстановления вкладок и окон, которые были закрыты во время работы браузера.

Функция sessions.getRecentlyClosed() возвращает массив объектов tabs.Tab и windows.Window, представляющих вкладки и окна, которые были закрыты с момента запуска браузера, до максимального значения, определенного в sessions.MAX_SESSION_RESULTS.

Затем вы можете восстановить окно или вкладку, используя функцию sessions.restore(). Восстановление не просто открывает вкладку: оно также восстанавливает историю навигации вкладки, поэтому кнопки «Назад»/«Вперёд» будут работать.

Этот API также предоставляет группу функций, которые позволяют расширению хранить дополнительное состояние, связанное с вкладкой или окном. Затем, если вкладка или окно закрываются и впоследствии восстанавливаются, расширение может извлечь состояние. Например, расширение для группирования вкладок может использовать это для запоминания, в какой группе находится вкладка, чтобы восстановить её в правильную группу, если пользователь восстановит вкладку.

Для использования API сеансов необходимо разрешение «сеансы» API permission.

Типы

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

Срабатывает при закрытии вкладки или окна.

Совместимость с браузерами

Рабочий стол Мобильные устройства
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
Filter Да 79 52 ? Да Нет ? ? Нет ? Нет ?
MAX_SESSION_RESULTS Да 79 52 ? Да Нет ? ? Нет ? Нет ?
Session Да 79
52'Tab' объекты в Сеансах не содержат свойств 'url', 'title' или 'favIconUrl'.
? Да Нет ? ? Нет ? Нет ?
forgetClosedTab Нет Нет 55 ? Нет Нет ? ? Нет ? Нет ?
forgetClosedWindow Нет Нет 55 ? Нет Нет ? ? Нет ? Нет ?
getRecentlyClosed Да 79 52 ? Да Нет ? ? Нет ? Нет ?
getTabValue Нет Нет 57 ? Нет Нет ? ? Нет ? Нет ?
getWindowValue Нет Нет 57 ? Нет Нет ? ? Нет ? Нет ?
onChanged Да 79 53 ? Да Нет ? ? Нет ? Нет ?
removeTabValue Нет Нет 57 ? Нет Нет ? ? Нет ? Нет ?
removeWindowValue Нет Нет 57 ? Нет Нет ? ? Нет ? Нет ?
restore Да 79 52 ? Да Нет ? ? Нет ? Нет ?
setTabValue Нет Нет 57 ? Нет Нет ? ? Нет ? Нет ?
setWindowValue Нет Нет 57 ? Нет Нет ? ? Нет ? Нет ?

Примеры расширений

  • session-state

Примечание: Этот API основан на API chrome.sessions от Chromium.

© 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API