Background timers
by juberti
HTML
<button onclick="start()">▶</button>
JavaScript
var lastTime;
var interval = null;
function start() {
if (interval) {
clearInterval(interval);
interval = null;
return;
}
lastTime = performance.now();
interval = setInterval(() => {
var now = performance.now();
var et = now - lastTime;
console.log('et: ' + et + ', hidden: ' + document.hidden);
lastTime = now;
}, 250);
}
document.body.onblur = () => { console.log('blur'); }
document.body.onfocus = () => { console.log('focus'); }