request-animation-frame-timeout

setTimeout() via requestAnimationFrame()

Usage no npm install needed!

<script type="module">
  import requestAnimationFrameTimeout from 'https://cdn.skypack.dev/request-animation-frame-timeout';
</script>

README

request-animation-frame-timeout

Rationale

For some weird reason, in Chrome, setTimeout() would lag up to a second (or more) behind. Turns out, Chrome developers have deprecated setTimeout() API entirely without asking anyone. Replacing setTimeout() with requestAnimationFrame() can work around that Chrome bug. The timer-freezing behavior of Chrome is inherently retarded, so this workaround wouldn't be required if they designed their corporate web browser properly.

Use

npm install request-animation-frame-timeout --save
import { setTimeout, clearTimeout } from 'request-animation-frame-timeout'