2012-04-24 9 views
0

次の問題があります。私はそれらをロードしたい画像タイトルを配列にプッシュして表示する

<div class = "someclass"> 
<img src = "1.jpg" title="jeeden"/> 
<img src = "2.jpg" title="dwa"/> 
<img src = "3.jpg" title="trzy"/> 
</div> 

、および読み込みながら - ここでは、jQueryの中で私の配列に彼らのタイトルをプッシュするには、コードは次のとおりです:私は私のindex.htmlに三つの画像を持って

var titletable = []; 

$(document).ready(function() { 

$("img").load(function(event){ 
titletable.push($(this).attr('atrybut1')); 
}); 


$.each(titletable, function(i, v) { 
$('.someclass').append("<li>" + i + ": " + v + "</li>"); 
}); 

私は$.eachの反復を.load関数に移動していますが、配列要素を示していますが、間違った方法で、画像がロードされるたびに配列の状態が表示されます。私はtitletableの内容を3つの画像すべてがロードされるときに表示したいと思います。これどうやってするの?

答えて

0

あなたは外.LOADを.eachランニングウェア、および負荷がusualy後、私は、現在ロードされた画像の数を保つ

var titletable = []; 

$(document).ready(function() { 
    var totalImages = $("img").length; 
    var loadedImages = 0; 

    $("img").load(function(event){ 
     titletable .push($(this).attr('title')); 
     loadedImages++; 

     if (loadedImages == totalImages) 
      $.each(titletable, function(i, v) { 
       $('.someclass').append("<li>" + i + ": " + v + "</li>"); 
      }); 
}); 

を発生し、すべてのイメージがロードされたときに、私は、配列を使用しています。

+0

お返事ありがとうございます。私は知っているが、私はそれをあなたのやり方でやっているときに、それはすべての画像がロードされた後に配列を表示する。すべての画像がロードされた後に表示したい) – pawel

+0

私の投稿を編集してそれを処理します。 – gabitzish

関連する問題