我目前正在我的一个网站上使用此代码,
我希望 test.php 立即加载,但它会等到间隔之后。
然后如果每分钟继续一次,直到页面关闭。这可能会导致非常大的带宽使用。
$(document).ready(function () {
setInterval(function() {
$.get("test.php", function (result) {
$('#id').html(result);
});
}, 60000);
});
我想要实现的是。
在页面加载时加载 test.php。
然后每 60 秒加载一次页面
如果页面已打开 10 分钟,则间隔时间加倍至 120 秒。
20分钟增加至180秒间隔
30分钟增加至240秒间隔
等等。
感谢您的帮助
最佳答案
您可以使用 setInterval
来管理每 10 分钟增加的间隔,并使用 setTimeout
来使用该间隔。要让代码在页面加载时立即执行,只需稍微重新排列一下代码:
$(document).ready(function () {
var interval = 60000;
setInterval(function () {
interval += 60000;
}, 600000); // every 10 minutes
(function loop() {
$.get("test.php", function (result) {
$('#id').html(result);
});
setTimeout(loop, interval); // repeat after interval
})(); // execute immediately
});
关于javascript - 首先使用 ajax 加载页面,然后逐渐增加间隔,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46135814/