目指している挙動
①ローディングアニメーションが流れる(固定の秒数)
②ページのコンテンツを表示(ファーストビューでは、スリックのスライダーを使用している)
※ページのコンテンツには、表示されてから動きがあるものがあるから、ローディングアニメーションが終わってから、動いて欲しい
###現状の動き
ローディングアニメーションが流れている間にも、ページのコンテンツは動いていて、ローディングアニメーションが終わる頃には、ページコンテンツの動きが終了してしまっている。
###試したこと
初めから、ページコンテンツをdisplay:none;にしておき、delay関数で一定時間後にdisplay:block;のクラスを付与して表示する。
結果
動きに関しては、予定通りに、ローディングアニメーションが終わってから、スライドが動いてくれた。
だが、slickの挙動がおかしくなっていた。
ページコンテンツが表示されてから、初めはスリックのwidthが0pxになっていおり、そして、2枚目のスライドの中盤に差し掛かってやっと指定していたwidthに戻った。
###有識者に質問
1個目:自分の「試したこと」の方向性は合っているのか。また、もっといい方法があるのか。
2個目:自分の「試している」ことの解決方法
###コードを置いておきます。
html
1<div class="loading-bg"> 2 <div class="loading-logo"> 3 <img src="/assets/img/logo.png" alt=""> 4 </div> 5</div> 6<div class="container"> 7 <!--ページコンテンツ--> 8</div>
js
1$(window).on('load', function () { 2 $(".loading-bg").delay(1500).fadeOut('slow', function () { 3 $('.container').addClass('appear'); 4 }); 5 $(".loading-logo").delay(1300).fadeOut('slow'); 6});
css
1.container {/*初期非表示*/ 2 display: none; 3} 4 5.container.appear {/*表示*/ 6 display: block; 7}
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。