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 reiht eine Funktion in die Warteschlange ein, die während der Leerlaufzeiten eines Browsers aufgerufen werden soll. Dies ermöglicht es Entwicklern, im Hintergrund und mit niedriger Priorität auf dem Hauptthread zu arbeiten, ohne latenzkritische Ereignisse wie Animationen und Eingabereaktionen zu beeinträchtigen. Funktionen werden in der Regel in der Reihenfolge des ersten Eintreffens aufgerufen; jedoch können Rückrufe, die eine timeout
-Angabe haben, außer der Reihe aufgerufen werden, falls nötig, um sie vor Ablauf des Zeitlimits auszuführen.
Sie können requestIdleCallback()
innerhalb einer Leerlaufrückruffunktion aufrufen, um einen weiteren Rückruf zu planen, der nicht vor dem nächsten Durchlauf durch die Ereignisschleife stattfindet.
Hinweis:
Eine timeout
-Option wird dringend für erforderliche Arbeiten empfohlen,
da andernfalls möglicherweise mehrere Sekunden vergehen, bevor der Rückruf ausgelöst wird.
Syntax
requestIdleCallback(callback)
requestIdleCallback(callback, options)
Parameter
callback
-
Eine Referenz zu einer Funktion, die in naher Zukunft aufgerufen werden soll, wenn die Ereignisschleife im Leerlauf ist. Der Rückruffunktion wird ein
IdleDeadline
Objekt übergeben, das die verfügbare Zeit beschreibt und ob der Rückruf ausgeführt wurde, weil die Zeitüberschreitung abgelaufen ist. options
Optional-
Enthält optionale Konfigurationsparameter. Derzeit ist nur eine Eigenschaft definiert:
timeout
-
Falls die Anzahl der Millisekunden, die durch diesen Parameter dargestellt werden, verstrichen sind und der Rückruf noch nicht aufgerufen wurde, wird eine Aufgabe zur Ausführung des Rückrufs in der Ereignisschleife eingereiht (auch wenn dies das Risiko negativer Auswirkungen auf die Leistung birgt).
timeout
muss ein positiver Wert sein, ansonsten wird er ignoriert.
Rückgabewert
Eine ID, die verwendet werden kann, um den Rückruf zu stornieren, indem sie in die Methode window.cancelIdleCallback()
übergeben wird.
Beispiele
Sehen Sie sich unser komplettes Beispiel im Artikel Kooperative Planung der Hintergrundaufgaben-API an.
Spezifikationen
Specification |
---|
requestIdleCallback() # the-requestidlecallback-method |