2016-04-25 9 views
0

jQuery load()メソッドを使用して、すべての画像のプリロード画像を追加しようとしています。 私のPHPドキュメントでは、イメージフォルダを読んでimg-tag foreach要素を作成します。このようなすべての画像のプリロード画像

何か:

$myimages = opendir("img/"); 
$gallery = array(); 
while($myimage = readdir($myimages)) 
{ 
if($myimage != '.' AND $myimage != '..') 
{ 
    $gallery[] = $image; 
} 
} 

sort($gallery); 

foreach ($gallery as $image) { 
    echo '<div><img src="img/'.$image.'" id="preload"/></div>'; 
} 

closedir($myimages); 

今、私はイメージがロードされているティル「スピナー・画像」を表示します。 window.loadまたはjQuery loadで試してみると、うまくいきません。

誰も私が何をしなければならないか説明できますか?

ありがとうございました!

//編集//

私はhtmlに余分divを使用している場合は、それが正常に動作します。

+1

'IMG {背景画像:URL(CSS/IMG/spinner.gif)50%無リピート; } ' –

+0

こんにちはRoko' img {バックグラウンド:url(css/img/spinner.gif)50%no-repeat;} 'イメージが完全に読み込まれるまで待ちませんか? –

+0

試しましたか?これは、画像の背景として設定されたダミーの背景プレースホルダです。 –

答えて

0

あなた可能性JavaScriptでpreloadImages

function preloadImages(array) { 
if (!preloadImages.list) { 
    preloadImages.list = []; 
} 
var list = preloadImages.list; 
for (var i = 0; i < array.length; i++) { 
    var img = new Image(); 
    img.onload = function() { 
     var index = list.indexOf(this); 
     if (index !== -1) { 
      // remove image from the array once it's loaded 
      // for memory consumption reasons 
      list.splice(index, 1); 
     } 
    }; 
    list.push(img); 
    img.src = array[i]; 
} 

} 
関連する問題