我想在我的网站上显示一些数据,这些数据应该每30秒更改一次。

但是,当有人打开我的网站时,还有18秒的更改时间,JS应该等待18秒,更改数据,然后设置setInterval()。

我尝试了这段代码:

var howmany = 1502; //seconds
var rest = howmany % 30

if(rest > 1) {
    window.setTimeout(function() {
        upgradeProducts();
        setInterval("upgradeProducts()", 15000);
    }, rest*1000);
}
else {
    setInterval("upgradeProducts()", 15000);
}


但它不起作用。我在哪里弄错了?

最佳答案

您需要引用current time,这将是您网站的每个用户之间的交叉引用。

在您的情况下,每个人的起点都是相同的(1500秒的30%)。

10-06 02:05