Skip to content
Permalink
master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time

idle-callback-polyfills.mjs

idlize/idle-callback-polyfills.mjs

Overview

Small polyfills that allow developers to use requestIdleCallback and cancelIdleCallback() in all browsers.

These are not full polyfills (since the native APIs cannot be fully polyfilled), but they offer the basic benefits of idle tasks via setTimeout() and clearTimeout().

Exports

Usage

import {rIC, cIC} from 'idlize/idle-callback-polyfills.mjs';

// To run a task when idle.
const handle = rIC(() => {
  // Do something here...
});

// To cancel the idle callback.
cIC(handle);

rIC

Uses the native requestIdleCallback() function in browsers that support it, or a small polyfill (based on setTimeout()) in browsers that don't.

See the requestIdleCallback() docs on MDN for details.

cIC

Uses the native cancelIdleCallback() function in browsers that support it, or a small polyfill (based on clearTimeout()) in browsers that don't.

See the cancelIdleCallback() docs on MDN for details.