Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.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
Php Jquery前置动画在AJAX中只工作一次_Php_Javascript_Jquery - Fatal编程技术网

Php Jquery前置动画在AJAX中只工作一次

Php Jquery前置动画在AJAX中只工作一次,php,javascript,jquery,Php,Javascript,Jquery,好的,我运行了一个AJAX长轮询,每次更新数据库时,我都让jquery将从AJAX接收到的信息添加到一个div中 Jquery将在每次更新数据库时添加信息,但它只在第一次执行动画。我尝试了很多不同的东西,得到了很多不同的和一些奇怪的结果。我是Jquery的新手,如果您能详细解释一下,我将不胜感激 这是我的AJAX函数 $.ajax({ type: 'POST', url: 'feedupdate.php', data: {function: '3t

好的,我运行了一个AJAX长轮询,每次更新数据库时,我都让jquery将从AJAX接收到的信息添加到一个div中

Jquery将在每次更新数据库时添加信息,但它只在第一次执行动画。我尝试了很多不同的东西,得到了很多不同的和一些奇怪的结果。我是Jquery的新手,如果您能详细解释一下,我将不胜感激

这是我的AJAX函数

$.ajax({
        type: 'POST',
        url: 'feedupdate.php',
        data: {function: '3test', datacheck: var_numcheck, javaid: var_IDcheck},
        success: function (check) {
            console.log(check);
            var verify = JSON.parse(check);

            if (var_IDcheck < verify['id']) {
                var_IDcheck = verify['id'];
                for (var i=0;i<var_IDcheck;i++){
                  $('#datacheck').prepend(verify[i]).slideDown('slow');




          }
          }
          setTimeout('activitycheck()',5000);
          },
    error: function(check) {
    console.log(check);
    setTimeout('activitycheck()',5000);
      }
      });
    } 


  $(document).ready(function()  {
   activitycheck();
  }); // document ready
$.ajax({
键入:“POST”,
url:'feedupdate.php',
数据:{function:'3test',datacheck:var\u numcheck,javaid:var\u IDcheck},
成功:功能(检查){
控制台日志(检查);
var verify=JSON.parse(检查);
如果(var_IDcheck对于(var i=0;i我不认为
setTimeout('activitycheck()',5000);
是写入选择

setInterval('activitycheck()',5000);
这对我帮助很大


在两个地方去掉设置超时('activitycheck()',5000);
并将其放在文档中。准备好了,代替仅仅
activitycheck()
。另外,我强烈反对使用just
setTimeout('activitycheck()',5000);
将其更改为:
setTimeout(function(){activitycheck()},5000)
或只需:
设置超时(activitycheck,5000);
当您在activitycheck中不需要任何参数时;它只会发布一次,而不是每五秒发布一次。是的,如果我去掉setimeout,整个长轮询将停止工作。你不必调用设置的间隔2次。你可以轻松地将它写在函数的旁边,它将直接调用它。你可以将它写在标记上方