フォトギャラリーのように、時間経過とともに画像が変わっていく処理をする場合、新しい画像が表示されるたびに画像を読み込むようになっています。(IEのステータスバーを見ているとよくわかります。)
1ループすると以後は読み込む動作をしなくなるのですが、できればページを開いたときにあらかじめすべての画像を読み込んでおきたい。
ということで、こんなサイトを見つけました。
photo_array = new Array("img01.jpg", "img02.jpg", "img03.jpg", "img04.jpg", "img05.jpg");
pl_file = new Array();
for(i=0;i<photo_arrray.length;i++){
pl_file[i] = new Image();
pl_file[i].src="photo/"+photo_array[i];
}
- photo_array:読み込む予定の画像ファイルすべてを配列に格納
- pl_file[i]=new Image():イメージオブジェクト生成(画像分用意するため、あらかじめ配列にしておく)
- pl_file[i].src:キャッシュに画像データを読み込む
という風な処理を行うと、事前に画像を読み込んでおくことができます。