JQuery在显示之前加载div中的所有图像

AJ *_*das 4 html javascript css jquery html5

我想在实际显示它们之前加载div中的每个图像.我有类似的东西:

<div>

<img src="1.jpg" />
<img src="1.jpg" />
<img src="1.jpg" />
<img src="1.jpg" />
<img src="1.jpg" />
<img src="1.jpg" />

</div>
Run Code Online (Sandbox Code Playgroud)

起初我尝试过这样的事情:

$('div img').load(function() {

$('div img').show();


});
Run Code Online (Sandbox Code Playgroud)

或这个:

$('div').find('img').load(function() {

$('div img').show();

});
Run Code Online (Sandbox Code Playgroud)

不幸的是,这不起作用,因为一旦浏览器加载甚至只是一个图像,它就会触发事件.有关如何首先加载所有内容的任何想法?谢谢!

nat*_*han 7

您可以跟踪已加载的图像数量:

var $images = $('div img'),
    preloaded = 0,
    total = $images.length;
$images.load(function() {
    if (++preloaded === total) {
        // Done!
    }
});
Run Code Online (Sandbox Code Playgroud)