webNavigation.onCommitted
Вызывается при подтверждении навигации. По крайней мере, часть нового документа получена от сервера, и браузер решил переключиться на новый документ.
Синтаксис
browser.webNavigation.onCommitted.addListener( listener, // function filter // optional object ) browser.webNavigation.onCommitted.removeListener(listener) browser.webNavigation.onCommitted.hasListener(listener)
События имеют три функции:
addListener(callback)-
Добавляет обработчик к этому событию.
removeListener(listener)-
Прекращает прослушивание этого события. Аргумент
listener— это обработчик, который нужно удалить. hasListener(listener)-
Проверяет, зарегистрирован ли
listenerдля этого события. Возвращаетtrueпри наличии прослушивания иfalseв противном случае.
Синтаксис addListener
Параметры
callback-
Функция, которая будет вызвана при возникновении этого события. Функции будут переданы следующие аргументы:
details-
object. Детали события навигации. Подробную информацию см. в разделе details.
-
filterНеобязательно -
object. Объект, содержащий единственное свойствоurl, которое является массивомevents.UrlFilterобъектов. Если этот параметр включен, событие будет срабатывать только для переходов по URL-адресам, которые соответствуют хотя бы одномуUrlFilterв массиве. Если этот параметр опущен, событие будет срабатывать для всех переходов.
Дополнительные объекты
details
tabId-
integer. Идентификатор вкладки, в которой произойдет навигация. url-
string. URL, на который будет перейти указанный фрейм. processId-
integer. Идентификатор процесса, в котором эта вкладка отображается. frameId-
integer. Фрейм, в котором произойдет навигация. Значение0указывает, что навигация происходит в верхнем уровне контекста просмотра вкладки, а не в вложенном<iframe>. Положительное значение указывает, что навигация происходит во вложенном iframe. Идентификаторы фреймов уникальны для заданной вкладки и процесса. parentFrameId-
integer. Идентификатор родительского фрейма. Установлено значение-1, если это фрейм верхнего уровня. timeStamp-
number. Время подтверждения навигации в миллисекундах с начала эпохи по Unix-времени. transitionType-
transitionType. Причина навигации. (Например,"link", если пользователь щелкнул по ссылке, или"reload", если пользователь перезагрузил страницу.) transitionQualifiers-
ArrayзначенийtransitionQualifier. Дополнительная информация о навигации: например, был ли серверный или клиентский редирект.
Совместимость с браузерами
| Рабочий стол | Мобильные | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | |
onCommitted |
ДаЕсли параметр filter пуст, Chrome соответствует всем URL-адресам. |
14Фильтрование не поддерживается. |
45["Фильтрование поддерживается начиная с версии 50.", "Если параметр filter пуст, Firefox генерирует исключение."] |
? | 17Если параметр filter пуст, Opera соответствует всем URL-адресам. |
14Если параметр filter пуст, Safari соответствует всем URL-адресам. |
? | ? | 48["Фильтрование поддерживается начиная с версии 50.", "Если параметр filter пуст, Firefox генерирует исключение."] |
? | 15Если параметр filter пуст, Safari соответствует всем URL-адресам. |
? |
transitionQualifiers |
Да | 79 | 48 | ? | 17 | Нет | ? | ? | 48 | ? | Нет | ? |
transitionType |
Да | 79 | 48 | ? | 17 | Нет | ? | ? | 48 | ? | Нет | ? |
Примеры
Выводит целевые URL-адреса и дополнительную информацию о переходе для onCommitted, если имя хоста целевого URL-адреса содержит "example.com" или начинается с "developer".
const filter = { url: [ {hostContains: "example.com"}, {hostPrefix: "developer"} ] } function logOnCommitted(details) { console.log(`target URL: ${details.url}`); console.log(`transition type: ${details.transitionType}`); console.log(`transition qualifiers: ${details.transitionQualifiers}`); } browser.webNavigation.onCommitted.addListener(logOnCommitted, 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/onCommitted