我试图重新加载div的内容而不实际刷新页面,问题是我只需要重新加载div而不是加载另一个不同的页面。我一直在尝试使用下面的代码,但它没有加载我需要的div,它在第一次刷新后被卡在循环中(每1秒刷新一次)。或者有没有办法每5秒重启一次jQuery动画?
var refreshId = setInterval(function() {
$('#wrapper').fadeOut("slow").load('../index.php#wrapper').fadeIn("slow");
}, 5000);
答案 0 :(得分:2)
我认为你想要setTimeout
而不是setInterval
。 setInterval
设置重复超时,这似乎不是您想要的
var refreshId = setTimeout(function(){
$('#wrapper').fadeOut("slow").load('../index.php#wrapper').fadeIn("slow");
}, 5000);
另外,我认为您希望将回调传递给加载,以确保只有在ajax请求完成后才将其淡化。
var refreshId = setTimeout(function(){
$('#wrapper').fadeOut("slow").load('../index.php#wrapper',
function() { $("#wrapper").fadeIn("slow") });
}, 5000);