A zero dependency, ~4KB library to make idle state detection in the browser an ease. With it's simple but yet powerful API it features everything you will ever need.
npm install idle-timeoutyarn add idle-timeout<script src="https://unpkg.com/idle-timeout/dist/idle-timeout.min.js"></script>idleTimeout is totally easy to use. All you basically need to do is:
idleTimeout(() => {
// Do some cool stuff
});The idleTimeout constructor takes two arguments:
callback [Function]- The callback functionoptions [Object]- An optional options objectelement [Element]- The element to listen for the timeouttimeout [Number]- The idle timeout (in milliseconds)loop [Boolean]- Wether the timeout should be looped when idle
const instance = idleTimeout(
() => {
// Callback
},
{
element: document,
timeout: 1000 * 60 * 5,
loop: false
}
);pause() - Pauses the timeout
instance.pause();resume() - Resumes an paused timeout
instance.resume();reset() - Reset the timeout
instance.reset();destroy() - Destroy the instance
instance.destroy();idle [Boolean] - Wether the current state is idle
instance.idle; // falsetimeout = value [Number] - Set the timeout (in milliseconds)
instance.timeout = 1000 * 60;loop = value [Boolean] - Set wether the timeout should be looped
instance.loop = true;idle = value [Boolean] - Set the idle state
instance.idle = true;| Chrome |
Firefox |
Safari |
Opera |
Edge |
IE |
|---|---|---|---|---|---|
| Latest 2 | Latest 2 | Latest 2 | Latest 2 | Latest 2 | 11 |
This project is licensed under the terms of the MIT License.