我有这个JS循环:

          for (var i = 0; i < jsArr.length; ++i) {
            $.post("checkdata.php", { names: jsArr[i], platforms: "1" })
            .done(function(data) {
                eval(data);
            });
          }


data是一些jQuery CSS操作。我有一个加载图像位于页面加载时显示的“ loadingImg” div类下。 checkdata.php根据API https://www.xboxleaders.com/检查names

在循环和jQuery $('#loadingImg').hide();进程完成后,完成.done(隐藏图像)的最佳方法是什么?

我已经考虑过在循环之后添加它,但这不能保证checkdata已经完成。

最佳答案

使用计数器:

      var counter = 0;
      for (var i = 0; i < jsArr.length; ++i) {
        $.post("checkdata.php", { names: jsArr[i], platforms: "1" })
        .done(function(data) {
            counter++;
            eval(data);
            if(counter == jsArr.length){
                $('#loadingImg').hide();
            }
        });
      }

关于javascript - JS循环结束时的jQuery hide(),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17767271/

10-13 00:38