jquery 当用户1分钟没有交互(不活动)时,如何触发一个JavaScript函数?[副本]

krugob8w  于 2023-10-17  发布在  jQuery
关注(0)|答案(1)|浏览(112)

此问题已在此处有答案

How to detect idle time in JavaScript(37个回答)
关闭27天前。
我有一个网页,需要我触发一个JavaScript函数时,用户是不活跃的1分钟。
此页面主要由<form>组件组成。
如何创建一个在1分钟不活动后触发的函数?

g9icjywg

g9icjywg1#

解决方案可能类似于this问题的答案。设置一个计时器,每当有鼠标移动、按键、滚动或任何您想要监听以确定不活动的事件时,该计时器就会重置:

function triggerIfInactive() {
    let time;
    resetTimer();
    let events = ['mousedown', 'mousemove', 'keydown', 'scroll', 'mousewheel', 'touchstart']; // You can add/remove events as you need
    events.forEach(ev => document.addEventListener(ev, resetTimer, true));
    
    function resetTimer() {
        clearTimeout(time); //Resets previous timer
        time = setTimeout(yourFunction, 60000) // Sets new timer after one minute
    }
};
windows.onload = () => triggerIfInactive();

相关问题