加载外部页面时 GIF 未运行


Gif not running when loading an external page

我有一个巨大的php表,我希望通过AJAX加载它以向用户插入加载gif。所以我对这种操作非常菜鸟,我制作了一个非常简单的代码来完成这个任务。这是我的代码:

$(document).ready(function() {
                $("#tableDiv").html('<center><img src="images/loader.gif" /></center>');
                $("#tableDiv").load("regulatoryData.php");
            }); 

这是正在加载 gif,但它没有运行,它保持静态。我该如何纠正它?有什么建议吗?

编辑:当我将图像拖到浏览器时,它会正常动画。

编辑2:惠特只是

$("#tableDiv").html('<center><img src="images/loader.gif" /></center>');

gif 工作正常,但是当我添加第二部分时,它开始运行,并且在它停止并保持冻结状态直到出现监管数据

之后

编辑3:实际上我检查的不是冻结的gif,而是整个浏览器。

对不起我的英语:/

<BODY>开头添加

<img src="images/loader.gif" style="display:none" />

作为"预加载器"

我发现当您开始加载另一个页面时,IE 会停止对 GIF 进行动画处理。我已经在我自己的一个项目中解决了这个问题,方法是添加一个超时,该超时在另一个页面开始加载后 50 毫秒刷新图像源,只需再次为其分配相同的值即可。在您的情况下,看起来像这样:

$(document).ready(function() {
            $("#tableDiv").html('<center><img src="images/loader.gif" /></center>');
            setTimeout(function() { $("#tableDiv img").attr("src", "images/loader.gif"); }, 50);
            $("#tableDiv").load("regulatoryData.php");
        }); 

我会推荐如下内容:

http://jsfiddle.net/NeFaz/1/

<a href="#" id="load">Load</a>
<div id="myid">
</div>

$(document).ready(function() {
    $("#load").click(function() {
        $('#myid').addClass('loading');
        $("#myid").load('http://www.confetti.co.uk/shop/', function () {
            $('#myid').removeClass('loading');
        });
    });
}); 

#myid {
    height: 500px;
    width: 500px;
}
#myid.loading {
    background-image: url('http://koikoikoi.com/wp-content/uploads/2012/07/RESET.gif');
}

这会将图像设置为div的背景,但仅在应用类时。我们从这个类开始。

单击加载链接后,我们将加载类添加到div,将显示 bg 图像。加载时使用的函数在加载完成时触发,并从div 中删除类,从而删除图像。