Permalink
Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
41 lines (24 sloc) 1.37 KB

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.