为了账号安全,请及时绑定邮箱和手机立即绑定

JavaScript:setInterval函数仅在浏览器空闲时才计数?

JavaScript:setInterval函数仅在浏览器空闲时才计数?

PHP
牧羊人nacy 2021-04-07 13:11:22
当浏览器通过setInterval() 函数处于非活动状态时,我想正确注销。当浏览器处于活动状态时,setInterval不会计数。但是,当浏览器保持空闲状态时,该功能正在计数。即使浏览器处于活动状态,如何实现setInterval计数?的JavaScriptfunction session_checking() {    $.post("activitytime.php");}   *//Every after 7 mins (60*7) after browser is inactive run activitytime.php*'   setInterval(session_checking, 1000*10);的PHP<?phpsession_start();//Do the necessary database updatesession_destroy();
查看完整描述

1 回答

?
芜湖不芜

TA贡献1796条经验 获得超7个赞

您可以使用“窗口”事件和“ clearInterval”


var sessionTimer;


function startTimer(){

      sessionTimer = setInterval(session_checking, 1000*10);

}

function stopTimer(){

    if(sessionTimer){

        clearInterval(sessionTimer);

    }

}

function session_checking() {

     $.post("activitytime.php");

//means tab is active

window.onfocus = function () { 

   stopTimer(); 

}; 

//means tab is passive

window.onblur = function () { 

    startTimer();

}; 

另外,如果您想在窗口关闭时调用API,则可以调用


window.onbeforeunload = function(e) {

      //call api here

      return true;

};


查看完整回答
反对 回复 2021-04-23
  • 1 回答
  • 0 关注
  • 221 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信