在固定的时间间隔后定期执行相同任务的不同方法

Different way to do a same task regularly after a fixed interval of time?

本文关键字:方法 任务 执行 时间      更新时间:2023-09-26

你能告诉我吗在固定时间间隔后定期执行相同任务的不同方法

我用了

function setPageIntervale(){
    var timer= setInterval(function() {
        $("#RLTRightDiv").innerHTML='';
        $("#RLTLeftDiv").innerHTML='';
        $.mobile.changePage($("#realTimeScreen"),{transition:'none'});
        clearInterval(timer);   
        setPageIntervale();
        // saveDataOnHtmlFile2();
    }, 15000);
}

如果必须每 15 秒调用一次setPageIntervale(),请使用以下命令:

function setPageIntervale(){
    $("#RLTRightDiv").innerHTML='';
    $("#RLTLeftDiv").innerHTML='';
    $.mobile.changePage($("#realTimeScreen"),{transition:'none'});
    // clearInterval(timer);   <-- remove this
    // saveDataOnHtmlFile2();
}
var timer = setInterval(function() {
    setPageIntervale();
}, 15000);

在函数之外设置间隔:

function clearDivs(){
   $("#RLTRightDiv").innerHTML='';
   $("#RLTLeftDiv").innerHTML=''; 
   $.mobile.changePage($("#realTimeScreen"),{transition:'none'});
}
var timer = setInterval(function() {       
   clearDivs();
}, 15000);

或者,如果需要仅在某个条件下运行,则可以使用 setTimeout 函数。

function clearDivs() {
   $("#RLTRightDiv").innerHTML='';
   $("#RLTLeftDiv").innerHTML='';
   $.mobile.changePage($("#realTimeScreen"),{transition:'none'});
   //If you require a condition, set it here.
   if (isTrue) {
      //If the given condition is true clear the divs after 15 seconds.
      setTimeout(function() {             
         clearDivs();
      }, 15000);
   }
}
//Call the div initially after 15 seconds
setTimeout(function() {             
   clearDivs();
}, 15000);

根据您的评论,如果您希望div 第一次在 15 秒后清除,然后每次清除 1 秒,请执行以下操作:

function clearDivs() {
   $("#RLTRightDiv").innerHTML='';
   $("#RLTLeftDiv").innerHTML='';
   $.mobile.changePage($("#realTimeScreen"),{transition:'none'});
   //Re-Call this function every 1 second.
   setTimeout(function() {
      clearDivs();
   }, 1000);
}
//Clear the divs after 15 seconds.
setTimeout(function() {
   clearDivs();
}, 15000);