downloads.onChanged

Das onChanged() Ereignis der downloads API wird ausgelöst, wenn sich eine der Eigenschaften eines downloads.DownloadItem ändert (außer bytesReceived).

Dem Listener wird ein downloadDelta als Parameter übergeben — ein Objekt, das die downloadId des betreffenden downloads.DownloadItem-Objekts sowie den Status aller geänderten Eigenschaften enthält.

Syntax

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

Ereignisse haben drei Funktionen:

addListener(listener)

Fügt diesem Ereignis einen Listener hinzu.

removeListener(listener)

Beendet das Zuhören auf dieses Ereignis. Das listener-Argument ist der zu entfernende Listener.

hasListener(listener)

Prüft, ob ein bestimmter listener für dieses Ereignis registriert ist. Gibt true zurück, wenn es zuhört, andernfalls false.

addListener Syntax

Parameter

listener

Die Funktion, die aufgerufen wird, wenn dieses Ereignis eintritt. Diese Funktion erhält die folgenden Argumente:

downloadDelta

Ein object, das das geänderte downloads.DownloadItem-Objekt und den Status aller darin geänderten Eigenschaften darstellt. Siehe den Abschnitt downloadDelta für weitere Details.

Zusätzliche Objekte

downloadDelta

Das downloadDelta Objekt hat die folgenden verfügbaren Eigenschaften:

id

Ein integer, der die id des geänderten downloads.DownloadItem darstellt.

url Optional

Ein downloads.StringDelta Objekt, das eine Änderung der url eines downloads.DownloadItem beschreibt.

filename Optional

Ein downloads.StringDelta Objekt, das eine Änderung des filename eines downloads.DownloadItem beschreibt.

danger Optional

Ein downloads.StringDelta Objekt, das eine Änderung des danger eines downloads.DownloadItem beschreibt.

mime Optional

Ein downloads.StringDelta Objekt, das eine Änderung des mime eines downloads.DownloadItem beschreibt.

startTime Optional

Ein downloads.StringDelta Objekt, das eine Änderung der startTime eines downloads.DownloadItem beschreibt.

endTime Optional

Ein downloads.StringDelta Objekt, das eine Änderung der endTime eines downloads.DownloadItem beschreibt.

state Optional

Ein downloads.StringDelta Objekt, das eine Änderung des state eines downloads.DownloadItem beschreibt.

canResume Optional

Ein downloads.BooleanDelta Objekt, das eine Änderung des canResume Status eines downloads.DownloadItem beschreibt.

paused Optional

Ein downloads.BooleanDelta Objekt, das eine Änderung des paused Status eines downloads.DownloadItem beschreibt.

error Optional

Ein downloads.StringDelta Objekt, das eine Änderung des error Status eines downloads.DownloadItem beschreibt.

totalBytes Optional

Ein downloads.DoubleDelta Objekt, das eine Änderung der totalBytes eines downloads.DownloadItem beschreibt.

fileSize Optional

Ein downloads.DoubleDelta Objekt, das eine Änderung der fileSize eines downloads.DownloadItem beschreibt.

exists Optional

Ein downloads.BooleanDelta Objekt, das eine Änderung des exists Status eines downloads.DownloadItem beschreibt.

Browser-Kompatibilität

Beispiele

Protokollieren Sie eine Nachricht, wenn Downloads abgeschlossen sind:

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

browser.downloads.onChanged.addListener(handleChanged);

Hinweis: Diese API basiert auf der chrome.downloads API von Chromium.