0

我只想在加载图像时加载它们。

这不起作用,因为在加载图像之前删除了“隐藏”类:

$(function(){
$('#nowplaying').load('nowplaying.php', function() {
    $('#images').removeClass('hidden');
}
)});

我能做什么 ?

编辑:这是我的代码:

在 index.php 我有:

<script type="text/javascript">
$(function(){
$('#nowplaying').load('nowplaying.php');
});
var auto_refresh = setInterval(
function ()
{
$('#nowplaying').load('nowplaying.php').fadeIn("slow");
}, 10000); // refresh every 10000 milliseconds
</script>

在 nowplaying.php 我有这个 div:

echo "<div id="images">;
foreach ($jpg_files as $file) {
if (file_exists($cover_path."\\\\".$file) && $file!="f.jpg") {
$file = urlencode($file);
echo "<a href=\"getimage.php?img=".$file."\" target=\"_blank\">
<img src=\"getimage.php?img=".$file."&p=".$cover_path."\" /></a>";
echo "&nbsp;&nbsp;&nbsp;&nbsp;";
}
echo "</div>;

我只想在加载时显示 div id #images 的图像(我不希望用户看到在浏览器中制作的图像)。

怎么做?

有人可以发送一个简单的 waitForImages 示例吗?它对我根本不起作用。

编辑 12-12-15:这是有效的:

<img style="display:none;" src="big3.jpg">
<script type="text/javascript">
$('img').load(function(){
    $(this).css({'display':'block'})
});
</script>

但这不起作用,为什么?:

<div style="display:none;">
    <img src="big3.jpg">
</div>
<script type="text/javascript">
$('div').load(function(){
    $(this).css({'display':'block'})
});
</script>

还是不知道为什么。但如果 img 有正常的 src ,这是有效的:在 div 下方:

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

现在这是我的大问题:我的图像 src 正在调用脚本:

<img src=\"getimage.php?img=".$file."\" />";

我怎样才能使它与这个一起工作?

4

3 回答 3

1

$('img').load()不可靠,不能跨浏览器工作。我会使用类似 waitForImages 的东西:https ://github.com/alexanderdickson/waitForImages

于 2012-12-14T16:33:19.597 回答
1

它解决了你的问题吗?

$('#images').load(function(){
    $(this).removeClass('hidden');
});
于 2012-12-14T16:04:24.967 回答
0

也许你需要我的插件 - http://archive.plugins.jquery.com/project/BatchImagesLoad

然后您可以在加载所有图像后进行操作。

于 2012-12-14T16:04:38.680 回答