根据当前休息的第二次并根据PC时间更新,每分钟jQuery Auto每分钟刷新



继续此问题

我有JS功能每60秒刷新Ajax。

var fetchData  = function()
{
    $.ajax(
    {
        url: "chkProfile.php",
        type: "POST",
        data:
        {
        },
        dataType: "JSON",
        success: function (jsonStr)
        {
        }
    });
}
fetchData();
var remainTime = 60 - parseInt((new Date().getTime() / 1000) % 60);
setTimeout(function()
{
    fetchData();
    setInterval(fetchData, 60000);
}, remainTime*1000);

此功能运行正常。因此,该功能将根据其余秒的时间运行一次每60秒(1分钟)。例如,我在18:51:30刷新页面,然后我们现在要走30秒。见面后60秒后运行Ajax刷新。

但是,当我尝试直接更改日期时间PC(Raspberry Pi 3)时,面临问题。示例:我设置了18:53:40,然后我可以看到Raspberry PC更新了。但是每60秒的功能不正确。

我想要的是,无论我更改时间,JS函数都知道60秒钟,在见面60秒之后,然后运行自动刷新功能。

更新

检查后,我发现问题是

示例:

Time1: Current time: 18:30:15

然后我更改

Time2: To be: 18:30:01

函数自动化仍然读取我更改的time1不是time2。因此,自动刷新将基于Time1刷新。

尝试以下方法:

var fetchData  = function(){
    $.ajax({
        url: "chkProfile.php",
        type: "POST",
        data:
        {
        },
        dataType: "JSON",
        success: function (jsonStr)
        {
        }
    });
}
fetchData();
setInterval(function(){
   var second = parseInt((new Date().getTime() / 1000) % 60);
    if(second === 0) {
       fetchData();
      }
},1000);

最新更新