Minimal javascript library to create and manage timers in the browser
MIT License
Minimal javascript library to create and manage timers
NOTE: Depends on window.requestAnimationFrame
. If your environment does not support it, you can polyfill.
$ npm install @georapbox/timer --save
The library is exported in UMD, CommonJS, and ESM formats. You can import it the following ways:
import Timer from '@georapbox/timer';
const Timer = require('@georapbox/timer');
<script src="https://unpkg.com/@georapbox/timer/dist/Timer.umd.min.js"></script>
Timer constructor: Creates a new Timer instance.
Throws:
duration
is not a number or NaN
.elapsedTime
is not a number or NaN
.Param | Type | Description |
---|---|---|
elapsedTime | Number | The time that has elapsed in milliseconds. If a negative number provided, it will become 0 . If a number greater than duration is provided, it will become equal to duration . |
duration | Number | The timer's duration in milliseconds. If a negative number provided, it will become 0 . |
[callback] | function | Function to be executed while timer is running. The Timer instance is passed by as parameter. |
Get the remaining and elapsed time.
Kind: instance method of Timer Returns: Object - An object literal that contains the remaining and the elapsed time in milliseconds.
Starts the timer. If the timer instance has been already started, the timer will just resume.
Kind: instance method of Timer Returns: Timer - The Timer instance.
Stops/Pauses the timer.
Kind: instance method of Timer Returns: Timer - The Timer instance.
Resets the timer to its initial state.
Kind: instance method of Timer Returns: Timer - The Timer instance.
Checks (at any time) if the timer is running or not.
Kind: instance method of Timer
Returns: Boolean - true
if the timer is running; otherwise false
.