Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery x秒后重新加载内容_Jquery - Fatal编程技术网

Jquery x秒后重新加载内容

Jquery x秒后重新加载内容,jquery,Jquery,在我的索引页面中,有一个div框,显示论坛上最后的帖子。 我希望每10秒重新加载一次 $(document).ready(function(){ while(1==1) { $("#lastPosts").delay(10000).load("showLastPosts.php"); } }); 这是个好主意吗?有更好的方法吗?试试: 因为你正在加载远程内容,你也应该考虑Ajax调用可能会以不同的顺序返回(可能性不大,因为你的间隔是10秒)。为了防

在我的索引页面中,有一个div框,显示论坛上最后的帖子。 我希望每10秒重新加载一次

$(document).ready(function(){
     while(1==1)
     {
        $("#lastPosts").delay(10000).load("showLastPosts.php");
     }
});
这是个好主意吗?有更好的方法吗?

试试:

<>因为你正在加载远程内容,你也应该考虑Ajax调用可能会以不同的顺序返回(可能性不大,因为你的间隔是10秒)。为了防止出现这种情况,可以使用
setTimeout
和递归函数(如MDN文章底部所述):


我想你会与服务器通信以获得最新的细节,以加载到div。所以应该考虑使用Ajax。

$(document).ready(function(){
    setInterval(function () {
      $.ajax({
         type : 'GET'
         url: 'showLastPosts.php',
         datatype: 'html',
         success: function(data){
             $("#lastPosts").html(data);
          }
       });
    }, 10000);
});

摆脱
while
循环。你不希望每次循环都会生成一个新的计时器,是吗?@Blender:只是一个输入错误——它已被删除。要加载,从哪里读取数据?您是否应该与服务器通信???
(function getLatestPosts(){  
   setTimeout(function(){   
      $("#latestPosts").load("showLastPosts.php", getLatestPosts);     
  }, 10000);  
})();  
$(document).ready(function(){
    setInterval(function () {
      $.ajax({
         type : 'GET'
         url: 'showLastPosts.php',
         datatype: 'html',
         success: function(data){
             $("#lastPosts").html(data);
          }
       });
    }, 10000);
});