Window: requestIdleCallback() Methode

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Die window.requestIdleCallback() Methode stellt eine Funktion in die Warteschlange, die während der Leerlaufzeiten eines Browsers aufgerufen werden soll. Dies ermöglicht es Entwicklern, Hintergrund- und niedrig priorisierte Arbeiten in der Haupt-Ereignisschleife auszuführen, ohne latenzkritische Ereignisse wie Animationen und Eingabereaktionen zu beeinträchtigen. Funktionen werden in der Regel in der Reihenfolge des Eintreffens (first-in-first-out) aufgerufen; Callbacks, die eine timeout-Angabe haben, können jedoch bei Bedarf außer der Reihe aufgerufen werden, um sie vor Ablauf des Zeitlimits auszuführen.

Sie können requestIdleCallback() innerhalb einer Leerlauf-Callback-Funktion aufrufen, um einen weiteren Callback zu planen, der frühestens beim nächsten Durchlauf der Ereignisschleife stattfinden soll.

Hinweis: Eine timeout-Option wird für erforderliche Arbeiten nachdrücklich empfohlen, da sonst möglicherweise mehrere Sekunden vergehen, bevor der Callback ausgelöst wird.

Syntax

js
requestIdleCallback(callback)
requestIdleCallback(callback, options)

Parameter

callback

Eine Referenz auf eine Funktion, die in naher Zukunft aufgerufen werden soll, wenn die Ereignisschleife im Leerlauf ist. Der Callback-Funktion wird ein IdleDeadline Objekt übergeben, das die verfügbare Zeit beschreibt und ob der Callback ausgeführt wurde, weil die Zeitüberschreitung abgelaufen ist.

options Optional

Beinhaltet optionale Konfigurationsparameter. Derzeit ist nur eine Eigenschaft definiert:

timeout

Wenn die durch diesen Parameter dargestellte Millisekundenanzahl verstrichen ist und der Callback noch nicht aufgerufen wurde, wird eine Aufgabe zur Ausführung des Callbacks in die Ereignisschleife gestellt (auch wenn dies ein Risiko negativer Leistungsauswirkungen birgt). timeout muss einen positiven Wert haben oder wird ignoriert.

Rückgabewert

Eine ID, die verwendet werden kann, um den Callback abzubrechen, indem sie in die window.cancelIdleCallback() Methode übergeben wird.

Beispiele

Spezifikationen

Specification
requestIdleCallback()
# the-requestidlecallback-method

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
requestIdleCallback

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support
See implementation notes.

Siehe auch