Javascript 每次加载时,Ajax自动刷新都会闪烁
我正在开发一个网页,它有一个div,其中有一个名为Javascript 每次加载时,Ajax自动刷新都会闪烁,javascript,jquery,ajax,Javascript,Jquery,Ajax,我正在开发一个网页,它有一个div,其中有一个名为headlines的类,它每10秒自动刷新一次,问题是当数据加载到div时,它会闪烁,我想将其清除 $(document).ready(function() { setInterval(function() { $('.headlines').load('headlines.php'); }, 10000); }); 如果使用.load(),则无法消除闪烁。它会闪烁,因为它初始化请求,清除.headlines,并从服务器加载响
headlines
的类,它每10秒自动刷新一次,问题是当数据加载到div时,它会闪烁,我想将其清除
$(document).ready(function() {
setInterval(function() {
$('.headlines').load('headlines.php');
}, 10000);
});
如果使用
.load()
,则无法消除闪烁。它会闪烁,因为它初始化请求,清除.headlines
,并从服务器加载响应。这种反应不是即时的
您可以改为使用,并在success
方法中重写.headlines
的内容
setInterval(function() {
$.ajax({
url: 'your-url.html',
success: function(res) {
$('.headlines').html(res.data);
}
});
}, 10000);
编辑
这样想吧。。。如果响应是从不加载,那么当您使用.load()
时,它将等待响应。在等待期间,.headline
将无限期地为空
相反,您可以在.headlines
的上下文之外等待服务器响应
setInterval(function() {
$.ajax({
url: 'your-url.html',
success: function(res) {
$('.headlines').html(res.data);
}
});
}, 10000);
您需要查看jQuery文档。正如前面所说,您需要使用$.get()
函数来完成这项工作!因此,更新您的代码如下:
$(document).ready(function() {
setInterval(function() {
$.get('headlines.php', function (data) {
$('.headlines').html(data);
});
}, 10000);
});
$.load()
函数将闪烁。因此,我们可以使用任何其他AJAX函数,$.AJAX()
或$.get()
,在success
函数中,我们可以更新.html()
的.headlines你说的“眨眼”是什么意思我不明白你想解释什么,你能把它写在我的剧本里,这样我就能更好地理解它吗?我在回答中提到了你的名字<代码>:D
setInterval(function() {
$.ajax({
url: 'your-url.html',
success: function(res) {
$('.headlines').html(res.data);
}
});
}, 10000);