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)

Stoppt das Lauschen auf dieses Ereignis. Das listener-Argument ist der zu entfernende Listener.

hasListener(listener)

Überprüft, ob ein bestimmter listener für dieses Ereignis registriert ist. Gibt true zurück, wenn es lauscht, andernfalls false.

addListener Syntax

Parameter

listener

Die Funktion, die aufgerufen wird, wenn dieses Ereignis eintritt. Dieser Funktion wird folgendes Argument übergeben:

downloadDelta

Ein object, das das geänderte downloads.DownloadItem-Objekt darstellt und den Status aller darin geänderten Eigenschaften enthält. Weitere Details finden Sie im Abschnitt downloadDelta.

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 der danger-Eigenschaft 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

BCD tables only load in the browser

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.