Javascript/AJAX 异步加载旋转器

标签 javascript jquery ajax spinner loading

我正在尝试制作一个足够基本的页面,允许用户通过单击按钮来执行 php 脚本。每个按钮都会在单击时弹出一个加载微调器。

我的问题是,单击一个按钮然后单击另一个按钮时,两个旋转器都会同时关闭,即使第二个按钮可能仍在处理中。

有谁知道如何使这些旋转器真正异步?预先非常感谢,它杀了我。

JS:

function test(element){
    var append = "#";
    var test = append.concat(element);

    document.getElementById(element).style.visibility='visible';

            $.ajax({url:"test.php",success:function(result){
                    hide(element);
            }

            });
         };

    function hide(element){
        document.getElementById(element).style.visibility='hidden';
    };


</script>   

HTML:

 <html>
    <?
    $index = 0;
$myArray = array ("1", "2", "3", "4", "5");
for($index = 0; $index < 5; $index++){?>

    <button   onclick="test('<?echo $myArray [$index];?>')">Start</button>

<img id="<?echo $myArray [$index];?>" src="images/loader.gif"        
     style="visibility:hidden"/>
    <br><br>

    <?}?>

   </html>          

最佳答案

我会实现一个计数器。每次显示加载指示器时,将计数器加一,每次要隐藏它时,将计数器减一。然后监视计数器,每当它高于零时,就会显示加载指示器,当为零时,则隐藏它。有道理吗?

关于Javascript/AJAX 异步加载旋转器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16618706/

相关文章:

javascript - angularjs/javascript - 在未应用的图像上向左滚动

javascript - 下拉列表在不需要的时间关闭

javascript - 使用 jQuery 或 JavaScript 从 url 中删除参数

javascript - Python:更新通过浏览器中的 JavaScript 调用创建的 html 时出现问题

javascript - 我的 jquery 代码无法使用 ajax 更改页面

javascript - 没有网络服务器的客户端jquery中的xml?

javascript - 使用db.js查询IndexedDB时如何获取key和value?

javascript - 如何从javascript函数中获取值?

javascript - 为什么 $.when().pipe().then() 有效,但 $.when().then().then() 无效?

javascript - 通过 AJAX 加载 JavaScript 文件而不使用 jQuery