是否可以在 JavaScript 中检测到“ idle ”时间?
我的主要用例可能是预取或预加载内容。
空闲时间:用户不事件或没有任何 CPU 使用率的时期

最佳答案

这是一个使用 jQuery 处理 mousemove 和 keypress 事件的简单脚本。
如果时间到期,页面会重新加载。

<script type="text/javascript">
    var idleTime = 0;
    $(document).ready(function () {
        // Increment the idle time counter every minute.
        var idleInterval = setInterval(timerIncrement, 60000); // 1 minute

        // Zero the idle timer on mouse movement.
        $(this).mousemove(function (e) {
            idleTime = 0;
        });
        $(this).keypress(function (e) {
            idleTime = 0;
        });
    });

    function timerIncrement() {
        idleTime = idleTime + 1;
        if (idleTime > 19) { // 20 minutes
            window.location.reload();
        }
    }
</script>

关于javascript - 如何优雅地检测 JavaScript 中的空闲时间,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/667555/

10-13 08:08