2012-12-15 14 views
7

mogę załadować obraz, gdy jest załadowany, wykonując:jquery div gdy wszystkie obrazy ładowane

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

Ale co chcę, aby załadować div kiedy wszystko img jest załadowany, ale to nie działa, czemu? :

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

Dlaczego używasz '.css()'? '.show()' działa dobrze. – bobthyasian

Odpowiedz

16

Jak powiedział @Kolink, elementy div nie ładują się. Ten kod pokaże div, gdy załadowane zostaną wszystkie obrazy wewnątrz div. (Niesprawdzone)

var $images = $('div img'); 
var loaded_images_count = 0; 

$images.load(function(){ 
    loaded_images_count++; 

    if (loaded_images_count == $images.length) { 
     $("div").show(); 
    } 
}); 
1

<div> elementy nie ładują się, obrazy robią. Chcesz usłyszeć, kiedy obraz się ładuje, a następnie uzyskać <div> i pokazać.

0

znam jej zbyt późno, aby odpowiedzieć na to pytanie, ale dla każdego, oglądania tego wątku, jest prosty i łatwy w użyciu plugin jQuery z mnóstwem innych sztuczek, aby wykonać zadanie. You can check it out here. następnie do sprawdzenia wszystkich obrazów obciążenia, wystarczy to zrobić

Powiązane problemy