0

此代码在 img src 已设置时有效,例如:

<div id="images">
<img src="something.jpg" />
</div>
<script type="text/javascript">
    $(document).ready(function(){
        $("div#images").hide();
        $("div#images").find("img").load(function(){
            $(this).closest("div#images").show();
        });
    });
</script>

但如果 images src 正在调用脚本,则它不起作用:

<img src="getimage.php?img=something.jpg" />

在 getimage.php 我做 echo readfile($_GET["img"]);

我怎样才能使这项工作?

帕特里克

4

3 回答 3

0

使用window.onload而不是$(document).ready.

$(document).ready当 html 准备好时 window.onload发生,而在图像和竞争加载后发生。

我认为您的代码的问题在于,当加载“div#images”中的任何图像时,即使尚未加载其他图像,也会调用div显示相同图像的函数。div

您可以尝试隐藏“div#images”$(document).ready并将其显示在window.onload.

于 2012-12-15T16:10:02.060 回答
0

如果你想操作 SRC 属性,你可以使用 JQuery 的attr()函数:

$("#myImg").attr("src","newImage.png");
于 2012-12-15T16:01:52.350 回答
0

谢谢!

这就是我所做的:

<script type="text/javascript">
$("div#images").hide();
var $images = $('div#images img');
var loaded_images_count = 0;
$images.load(function(){
    loaded_images_count++;
    if (loaded_images_count == $images.length) {
        $("div#images").show();
    }
});
</script>
于 2012-12-15T22:25:22.970 回答