Spec-Zone.ru › Web Extensions

webNavigation.onErrorOccurred

Срабатывает, когда происходит ошибка и навигация прерывается. Это может произойти, если произошла ошибка сети или пользователь прервал навигацию.

Синтаксис

browser.webNavigation.onErrorOccurred.addListener(
  listener,                   // function
  filter                      // optional object
)
browser.webNavigation.onErrorOccurred.removeListener(listener)
browser.webNavigation.onErrorOccurred.hasListener(listener)

У событий есть три функции:

addListener(listener)

addListener(listener, filter)

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

removeListener(listener)

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

hasListener(listener)

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

Синтаксис addListener

Параметры

listener

Функция, которая будет вызвана при возникновении этого события.

Функция listener будет вызвана со следующими аргументами:

details

object. Детали события навигации. details имеет следующие свойства:

tabId

integer. Идентификатор вкладки, в которой происходила навигация.

url

string. URL, на который переходила данная рамка.

processId

integer. Идентификатор процесса, в котором эта вкладка отображается.

frameId

integer. Рамка, в которой происходила навигация.

0 указывает, что навигация произошла в верхнем уровне контексте просмотра вкладки, а не во вложенном <iframe>.

Положительное значение указывает, что навигация произошла во вложенном iframe.

Идентификаторы рамок уникальны для данной вкладки и процесса.

timeStamp

number. Время, когда произошла ошибка, в миллисекундах с момента эпохи.

error

string. Код ошибки. Это внутренний код ошибки, и нет гарантии, что он останется неизменным или будет согласованным в разных браузерах.

filter Необязательно

object. Объект, содержащий единственное свойство url, которое является Array объектов events.UrlFilter.

Если вы включите этот параметр, событие будет срабатывать только для переходов по URL-адресам, которые соответствуют хотя бы одному UrlFilter в массиве.

Если вы опустите этот параметр, событие будет срабатывать для всех переходов.

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

Рабочий стол Мобильные устройства
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet
onErrorOccurred
ДаЕсли параметр filter пустой, Chrome соответствует всем URL-адресам.
14Фильтрация не поддерживается
45["Фильтрация поддерживается с версии 50.", "Если параметр filter пустой, Firefox вызывает исключение."]
?
17Если параметр filter пустой, Opera соответствует всем URL-адресам.
14Если параметр filter пустой, Safari соответствует всем URL-адресам.
? ?
48["Фильтрация поддерживается с версии 50.", "Если параметр filter пустой, Firefox вызывает исключение."]
?
15Если параметр filter пустой, Safari соответствует всем URL-адресам.
?
error Да 14 Нет ? 17 14 ? ? Нет ? 15 ?

Примеры

Выводит целевые URL-адреса для onErrorOccurred, если целевой URL hostname содержит "example.com" или начинается с "developer".

const filter = {
  url:
  [
    {hostContains: "example.com"},
    {hostPrefix: "developer"}
  ]
}

function logOnErrorOccurred(details) {
  console.log(`onErrorOccurred: ${details.url}`);
  console.log(details.error);
}

browser.webNavigation.onErrorOccurred.addListener(logOnErrorOccurred, filter);

Примечание: Этот API основан на API chrome.webNavigation Chromium. Эта документация взята из web_navigation.json кода 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/webNavigation/onErrorOccurred

Spec-Zone.ru

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