这是我目前的代码:
var interval;
function printPageState() {
console.log("active");
}
window.onfocus = function() {
console.log("focus");
clearInterval(interval);
interval = setInterval(printPageState, 2000);
};
window.onblur = function() {
console.log("blur");
clearInterval(interval);
};
window.onscroll = function() {
console.log("scroll");
if (!document.hasFocus())
document.getElementById("some-id").focus();
clearInterval(interval);
interval = setInterval(printPageState, 2000);
};
我尝试创建用户注意力检查器/页面ping功能。检查器当前有一个用于模糊,焦点和滚动事件的事件处理程序。
当遇到以下问题时,我遇到了上述问题。
我想停止间隔,但模糊事件不再触发,因为浏览器没有聚焦,所以我试图强调其中一个元素的焦点状态,但没有锁定它不起作用。
执行以下问题以复制问题: