Spec-Zone.ru › Web Extensions

sessions.onChanged

Вызывается всякий раз, когда изменяется список закрытых вкладок или окон.

Синтаксис

browser.sessions.onChanged.addListener(listener)
browser.sessions.onChanged.removeListener(listener)
browser.sessions.onChanged.hasListener(listener)

События имеют три функции:

addListener(callback)

Добавляет обработчик к этому событию.

removeListener(listener)

Прекращает прослушивание этого события. Аргумент listener — это обработчик, который нужно удалить.

hasListener(listener)

Проверяет, зарегистрирован ли listener для этого события. Возвращает true, если он прослушивает, и false, в противном случае.

Синтаксис addListener

Параметры

callback

Функция, которая будет вызываться при возникновении этого события. Она не получает никаких параметров.

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

Рабочий стол Мобильные устройства
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet
onChanged Да 79 53 ? Да Нет ? ? Нет ? Нет ?

Примеры

Этот очень надоедливый расширение прослушивает onChanged, а затем немедленно восстанавливает последнюю закрытую сессию, что делает невозможным закрытие окон или вкладок:

function restoreSession(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);
}

function restoreMostRecent() {
  let gettingSessions = browser.sessions.getRecentlyClosed({
    maxResults: 1
  });
  gettingSessions.then(restoreSession, onError);
}

browser.sessions.onChanged.addListener(restoreMostRecent);

Примечание: Этот 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/onChanged

Spec-Zone.ru

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