情報量が多いサイトだと読み込むまでに時間がかかり、レイアウトが崩れたかのように見えてしまう場合があります。
そんな時、読み込みの時間がかかるサイトやスライダーなどにローディングアニメーションを実装することがあります。
ローディングアニメーションの実装方法です。
仕組みとしては、すべての読み込みが完了するまでに、コンテンツ部分は非表示にして、ローディング画面を表示させている状態になっています。
window.onload = function(){
$(function() {
$("#loading").fadeOut();
});
}
$(function() {
var h = $(window).height();
$('#wrapper').css('display','none');
$('#loader-bg ,#loader').height(h).css('display','block');
});
$(window).load(function () {
$('#loader-bg').delay(900).fadeOut(800);
$('#loader').delay(600).fadeOut(300);
$('#contents').css('display', 'block');
});
$(function(){
setTimeout('stopload()',10000);
});
#loading{
position: absolute;
left: 50%;
top: 50%;
margin-top: -25px;
margin-left: -25px;
}
#loader-bg {
position: fixed;
width: 100%;
height: 100%;
top: 0px;
left: 0px;
background: #fff;
z-index: 1;
}
ローディング用のgifですが、cssでも用意することができます。
CSSで作成すれば、JavaScriptよりも簡単にアニメーションを作ることができる上、ブラウザの処理にも負担をかけないでしょう。
実装には、CSS3のanimation プロパティを使用します。
Loaders.css
id=”loading”に対して、上記のサイトのcssを適用するだけで、いろいろなアニメーションを設定することができます。










