我正在使用数据表,并且可以选择使用setInterval
来刷新表内容。
问题是,当用户停留在该页面上并且该页面每秒对同一数据集进行一致的重新加载时,网络流量就会增加。
我想在 10 秒后停止,因为我认为这是用户在前往其他地方之前在该页面停留的平均时间。
不确定如何包含 10 秒超时,下面是迄今为止我的代码:
setInterval(function() {
$('#Table1').DataTable().ajax.reload(null, false);
}, 1000);
最佳答案
只需在 10 秒后取消 setInterval
(使用 setTimeout
)即可。您可以使用 clearInterval
清除间隔计时器。
var refreshInterval = setInterval(function() {
$('#Table1').DataTable().ajax.reload(null, false);
}, 1000);
setTimeout(function() {
clearInterval(refreshInterval);
}, 1000 * 10);
JavaScript 的异步特性使 setInterval
和 setTimeout
能够在适当的时间运行,并且不会阻塞另一个。
关于javascript - 如何在x秒后停止重新加载间隔?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44786893/