初心者向け。コピペでできるjQueryのローディングの実装方法

初心者向け。コピペでできるjQueryのローディングの実装方法

980 回閲覧されました

みなさんこんにちは、jonioです。

最近ローディングを使っているサイトをよく見ますがjQueryを使ってコピペで実装できる方法を解説します。

 

ローディングに使うコード

未経験の人でCSSが意味がわからない人は完全にコピペで使ってください。

//HTML
<div class="loading">
  <div class="loading-wrap">
    <p>Now Loading</p>
  </div>
</div>
<div class="loading-after">
  <p>ローディングが完了しました</p>
</div>


//css
.loading{
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: #000;
    z-index: 9000;
}
.loading-wrap{
    margin: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 9999;
}
.loading-wrap p{
    color:#fff;
    font-size: 40px;
}
.loading-after p{
    font-size: 40px;
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%);
}


//jQuery
$(window).on('load', function(){
    $('.loading').delay(900).fadeOut(800);
});
$(function(){
    setTimeout('stopload()', 10000);
})
function stopload(){
    $('.loading').delay(900).fadeOut(800);
}

4行目はローディングしている時に表示したい内容を書いてください。

8行目はローディングが終わった後に表示したい内容を書いてください。

44行目〜46行目ですが44行目の「$(window).on(‘load’」で画面の読み込みが始まったらという意味です。

45行目の「$(‘.loading’).delay(900)」は.loadingの内容(4行目)を0.9秒表示するという意味です。

45行目の「.fadeOut(800)」は0.8行かけて消えるという意味です。

よって45行目は「ローディングの時に表示したい内容を0.9秒の間表示して0.8秒かけて消える」という意味です。

47行目〜52行目はローディングが終わらなかった場合の処理です。

50行目〜52行目は45行目と同じで「ローディングの時に表示したい内容を0.9秒の間表示して0.8秒かけて消える」という意味です。

47行目〜49行目は「50行目〜52行目の内容を1秒ごとに繰り返す」という事ですがローディングの時に表示したい内容を0.9秒の間表示して0.8秒かけて消える処理が1回されるとローディング画面はなくなるのでローディングが終わるという意味です。

これで完成です。