Window : méthode requestIdleCallback()
Disponibilité limitée
Cette fonctionnalité n'est pas Compatible car elle ne fonctionne pas dans certains des navigateurs les plus utilisés.
La méthode requestIdleCallback() de l'interface Window mémorise une fonction qui sera appelée lorsque le navigateur n'aura plus aucune tâche critique à exécuter. Cela permet aux développeur·euse·s de réaliser des travaux en arrière-plan et à faible priorité sur le processus principal, sans impacter les évènements sensibles à la latence tels que l'animation et la réponse aux entrées. Les fonctions sont généralement appelées dans l'ordre premier entré, premier sorti ; cependant, les rappels ayant un timeout défini peuvent être appelés hors ordre si nécessaire pour s'exécuter avant l'expiration du délai.
Vous pouvez appeler requestIdleCallback() à l'intérieur d'une fonction de rappel inoccupée pour planifier un autre rappel qui se produira au plus tôt lors du prochain passage dans la boucle d'évènements.
Note :
Il est fortement recommandé de définir une option timeout pour les travaux requis, sinon il est possible que plusieurs secondes s'écoulent avant que le rappel ne soit exécuté.
Syntaxe
requestIdleCallback(callback)
requestIdleCallback(callback, options)
Paramètres
callback-
Une référence à une fonction qui doit être appelée dans un futur proche, lorsque la boucle d'évènements est inoccupée. La fonction de rappel reçoit un objet
IdleDeadlinedécrivant la quantité de temps disponible et si la fonction de rappel a été exécutée en raison de l'expiration de la période de délai. optionsFacultatif-
Objet contenant des paramètres de configuration optionnels. Seule une propriété est actuellement définie :
timeout-
Si le nombre de millisecondes représenté par ce paramètre s'est écoulé et que la fonction de rappel n'a pas encore été appelée, alors une tâche pour exécuter la fonction de rappel est mise en file d'attente dans la boucle d'événements (même si cela risque de provoquer un impact négatif sur les performances).
timeoutdoit être une valeur positive ou il est ignoré.
Valeur de retour
Un ID qui peut être utilisé pour annuler le rappel en le passant à la méthode window.cancelIdleCallback().
Exemples
Voir notre exemple complet dans l'article de l'API de planification coopérative des tâches en arrière-plan.
Spécifications
| Spécification |
|---|
| requestIdleCallback()> # the-requestidlecallback-method> |
Compatibilité des navigateurs
Voir aussi
- La méthode
Window.cancelIdleCallback() - L'interface
IdleDeadline - La méthode
Window.setTimeout() - La méthode
Window.setInterval() - La méthode
Window.requestAnimationFrame()