Spec-Zone.ru › Web Extensions

downloads.onChanged

Событие onChanged() API downloads срабатывает при изменении любого свойства элемента downloads.DownloadItem (за исключением bytesReceived).

Обработчик получает в качестве параметра объект downloadDelta, содержащий данные downloadId объекта downloads.DownloadItem, а также состояние всех изменённых свойств.

Синтаксис

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

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

addListener(callback)

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

removeListener(listener)

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

hasListener(listener)

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

Синтаксис addListener

Параметры

callback

Функция обратного вызова, которая будет вызвана при возникновении этого события. Эта функция получит следующие аргументы:

downloadDelta

Объект object, представляющий объект downloads.DownloadItem, который изменился, и состояние всех изменённых в нём свойств. Более подробная информация приведена в разделе downloadDelta.

Дополнительные объекты

downloadDelta

Объект downloadDelta имеет следующие доступные свойства:

id

Объект integer, представляющий id изменённого элемента downloads.DownloadItem.

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

Объект downloads.StringDelta, описывающий изменение в url элемента downloads.DownloadItem.

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

Объект downloads.StringDelta, описывающий изменение в filename элемента downloads.DownloadItem.

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

Объект downloads.StringDelta, описывающий изменение в danger элемента downloads.DownloadItem.

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

Объект downloads.StringDelta, описывающий изменение в mime элемента downloads.DownloadItem.

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

Объект downloads.StringDelta, описывающий изменение в startTime элемента downloads.DownloadItem.

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

Объект downloads.StringDelta, описывающий изменение в endTime элемента downloads.DownloadItem.

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

Объект downloads.StringDelta, описывающий изменение в state элемента downloads.DownloadItem.

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

Объект downloads.BooleanDelta, описывающий изменение статуса canResume элемента downloads.DownloadItem.

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

Объект downloads.BooleanDelta, описывающий изменение статуса paused элемента downloads.DownloadItem.

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

Объект downloads.StringDelta, описывающий изменение статуса error элемента downloads.DownloadItem.

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

Объект downloads.DoubleDelta, описывающий изменение в totalBytes элемента downloads.DownloadItem.

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

Объект downloads.DoubleDelta, описывающий изменение в fileSize элемента downloads.DownloadItem.

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

Объект downloads.BooleanDelta, описывающий изменение статуса exists элемента downloads.DownloadItem.

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

Десктопные Мобильные
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
onChanged Да 79 47 ? Да Нет ? ? 48–79 ? Нет ?

Примеры

Вывести сообщение при завершении загрузки:

function handleChanged(delta) {
  if (delta.state && delta.state.current === "complete") {
    console.log(`Download ${delta.id} has completed.`);
  }
}

browser.downloads.onChanged.addListener(handleChanged);

Примечание: Этот API основан на API chrome.downloads 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/downloads/onChanged

Spec-Zone.ru

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