idle-timeout
idle-timeout copied to clipboard
A basic idle state detector written in ES6.
idleTimeout
A zero dependency, ~3KB 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.
Installation
Using npm
npm install idle-timeout
Using yarn
yarn add idle-timeout
Using CDN
<script src="https://unpkg.com/idle-timeout/dist/idle-timeout.min.js"></script>
Usage
idleTimeout is totally easy to use. All you basically need to do is:
idleTimeout(() => {
// Do some cool stuff
});
Documentation
The idleTimeout constructor takes two arguments:
-
callback [Function]
- The callback function -
options [Object]
- An optional options object-
element [Element]
- The element to listen for the timeout -
timeout [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
}
);
Methods
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();
Getters
idle [Boolean]
- Wether the current state is idle
instance.idle; // false
Setters
timeout = 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;
Browser Support
Chrome |
Firefox |
Safari![]() |
Opera |
Edge |
IE |
---|---|---|---|---|---|
Latest 2 | Latest 2 | Latest 2 | Latest 2 | Latest 2 | 11 |
License
This project is licensed under the terms of the MIT License.