画像をロードする時のロード画面ってなにげに分からないなーと思い調べてメモ。
基本的な流れとして下記のようにしてみた。
- 読み込む画像のURL
- ローディング画像を最初は透明にしておいてフェードインさせる
- jQueryでimg要素を作成して初期は透明にしてattr()でsrc属性で読み込む
- 画像を表示させるところにappendメソッドで追加する
- loadメソッドで読みこんだ後の処理として、ローディング画像をfadeOutさせてその後に、img要素をfadeInさせる
ということで下記に一気にメモっとく
$(document).ready(function(){
//初期設定
var url="images/1.jpg";
loadimg();
/* 画像読み込み関数
----------------------------------*/
function loadimg(){
$("div#loadimg").hide();
$("div").fadeIn(400);
//img要素を作成する
var $img=$("");
//初期では透明にしておく
$img.hide();
//画像のurlを設定
$img.attr("src",url);
//画像を追加
$("div#wrapper").append($img);
//画像読み込み
$img.bind("load",function(){
$("div#loadimg").fadeOut(400);
$(this).delay(400).fadeIn(400);
});
}
//
});