我正在建立一个天气数据实时网站,使用的是捐赠给我的模板。它应该每5秒钟或我设置的任何时间刷新一次元素数据,但是在每个浏览器中,我必须刷新或强制刷新,甚至删除所有历史记录,Cookie等,以获取最新数据。我真的不想刷新整个页面。
$(document).ready(function() {
windspeed();
});
function windspeed() {
$('#windspeed').load('windspeed.php');
}
var refreshId = setInterval(windspeed, 5000);
最佳答案
问题是:您正在同时执行多个URL请求,因为您正在使用setInterval
。请改用setTimeout
,但仅在url请求完成时使用。
您必须用.load
替换$.ajax
方法,因为它具有成功回调:
var refreshId;
$(document).ready(function() {
windspeed();
});
function windspeed() {
$.ajax({
cache: false,
success: function(response) {
$('#windspeed').html(response);
setTimeout(windspeed, 5000);
},
type: 'GET',
url: 'windspeed.php'
});
}
关于javascript - RefreshID = setinterval无法正常工作?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38543789/