--- title: window.requestIdleCallback() slug: Web/API/Window/requestIdleCallback translation_of: Web/API/Window/requestIdleCallback ---
{{APIRef}}{{SeeCompatTable}}

Résumé

La méthode window.requestIdleCallback() mémorise une fonction qui sera appellée lorsque le navigateur n'aura plus aucune autre tâche en cours. Cela offre au développeur la possibilité de réaliser des tâches à basse priorité en arrière-plan sur le thread principal, sans impacter l'expérience utilisateur (ralentissement des animations, etc). L'ordre des appels aux fonctions est généralement premier entré, premier sorti, sauf si le timeout défini au moment de l'enregistrement est atteint avant que le navigateur n'ait eu le temps d'appeler la fonction en question.

Syntaxe

var idleCallbackId = window.requestIdleCallback(fonction[, options])

Retour de l'appel

Un entier long non-signé qui peut être utilisé pour annulé l'appel à la fonction via la méthode {{domxref("window.cancelIdleCallback()")}}.

Paramètres

fonction
La référence d'une fonction qui devrait être appellée dans un futur proche. La fonction en question recevra en argument un objet de type temps restant avec les propriétés suivantes :
options {{optional_inline}}
Objet contenant des paramètres de configuration optionnels. Les propriétés sont les suivantes :

Spécifications

Spécification Status Comment
{{SpecName('Background Tasks')}} {{Spec2('Background Tasks')}} Définition initiale.

Compatibilité avec les navigateurs

{{CompatibilityTable}}

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support {{CompatChrome(47)}} {{CompatNo}}[1] {{CompatNo}} {{CompatOpera(34)}} {{CompatNo}}
Feature Android Android Webview Firefox Mobile (Gecko) Firefox OS IE Mobile Opera Mobile Safari Mobile Chrome for Android
Basic support {{CompatNo}} {{CompatChrome(47)}} {{CompatUnknown}} {{CompatUnknown}} {{CompatUnknown}} {{CompatUnknown}} {{CompatUnknown}} {{CompatChrome(47)}}

[1] En voie d'être déployé dans Firefox 52, voir le {{bug(1198381)}}.