【jQuery】遅延表示『inview.js』と『lazysizes.js』を組み合わせて、『重いページよ、さようなら』
- 2020.5.26
- jQuery

jQueryの遅延プラグイン『inview.js』と、画像の遅延表示ができる『lazysizes.js』を組み合わせるととてもいい感じだったので備忘録です。

ふわーっと

画像の読み込みを遅くして、コンテンツも遅くしてみましたー
1.『inview.js』だけ
スクロールすると、ふわーっと。
動き(アニメーション)がわかりやすいようにスタイル(CSS)を付けています。
See the Pen
【jQuery】『inview.js』下からフェードイン(ふわっと) by 125naroom (@125naroom)
on CodePen.
コードはこちら
HTML
<div class="section"> <div class="imgBox inview fadeIn_up"> <img src="https://125naroom.com/demo/img/simple01.jpg" alt=""> </div> <div class="imgBox inview fadeIn_up"> <img src="https://125naroom.com/demo/img/simple02.jpg" alt=""> </div> <div class="txtBox inview fadeIn_up"> <p>ふわっと</p> </div> </div>
CSS
.fadeIn_up { opacity: 0; transform: translate(0, 50%); transition: 2s; } .fadeIn_up.is-show { transform: translate(0, 0); opacity: 1; }
jQuery
$(function(){ $(".inview").on("inview", function (event, isInView) { if (isInView) { $(this).stop().addClass("is-show"); } }); });
2.『lazysizes.js』だけ
画像(img)に「lazyload」というクラスを付けます。
遅延表示されると「lazyloaded」というクラスに変わります。
※ Chromeの検証ツールで確認するとよくわかります。
See the Pen
lazysizes.jsで画像を遅延表示、デフォルト by 125naroom (@125naroom)
on CodePen.
HTMLとCSSはこちら
HTML
<div class="section"> <div class="imgBox"> <img data-src="https://125naroom.com/demo/img/simple01.jpg" alt="" class="lazyload"> </div> <div class="imgBox"> <img data-src="https://125naroom.com/demo/img/simple02.jpg" alt="" class="lazyload"> </div> <div class="imgBox"> <img data-src="https://125naroom.com/demo/img/simple03.jpg" alt="" class="lazyload"> </div> </div>
CSS
.imgBox { text-align: center; margin: 50px 0; } .imgBox img { max-width: 100%; height: auto; vertical-align: top; }
3.『inview.js』と『lazysizes.js』を組み合わせると
見た目は何も変わってないのですが、画像の読み込みを遅くしているのでサイトの表示速度の改善に効果的です。
あー、重いサイト、どうにかしたいなー、って時におすすめです。
See the Pen
【jQuery】遅延表示『inview.js』と『lazysizes』を組み合わせてみるととてもいい感じです by 125naroom (@125naroom)
on CodePen.
コードはこちら
HTML
<div class="section"> <div class="imgBox inview fadeIn_up"> <img src="https://125naroom.com/demo/img/simple01.jpg" alt="" class="lazyload"> </div> <div class="imgBox inview fadeIn_up"> <img src="https://125naroom.com/demo/img/simple02.jpg" alt="" class="lazyload"> </div> <div class="txtBox inview fadeIn_up"> <p>ふわっと</p> </div> </div>
CSS
.fadeIn_up { opacity: 0; transform: translate(0, 50%); transition: 2s; } .fadeIn_up.is-show { transform: translate(0, 0); opacity: 1; }
JavaScript
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery.inview/1.0.0/jquery.inview.min.js"></script> <script type="text/javascript" src="js/lazysizes.min.js"></script>
$(function(){ $(".inview").on("inview", function (event, isInView) { if (isInView) { $(this).stop().addClass("is-show"); } }); });
メモ
jQueryのことで何かわからないことがあればjQueryの日本語リファレンスサイトがあるので一度チェックしてみるといろいろ解決できたりしますよ。
さいごに

速度アップですー

PageSpeed Insights(Googleさんのページ読み込み速度をチェックするサイト)で点数が低いときに是非ー
関連記事
おすすめ
かんれん
- web / 2020.1.15
- 【CSS】簡単に固定できるposition: sticky;の実装サンプル集
- web / 2018.10.5
- 【CSS】タブレット、スマホ表示の時は:hoverを不要にする
- web / 2018.8.30
- 【CSS】line-heightの単位は必要ない
Googleさんのおすすめ
人気記事
- web / 2019.4.16
- 【CSS】ハンバーガーメニュー実装サンプル集(クリック時のエフェクトも集めました)
- web / 2022.2.1
- 【jQuery】アコーディオン実装サンプル10選
- web / 2019.9.27
- 【jQuery】スライダープラグイン「slick」実装サンプル集
Googleさんのおすすめ
デザインの記事
- 2023.12.08New
- 信州アップルパイ研究所_Q
- 国内、海外のウェブデザイン、パソコン・タブレット・スマートフォンでも見やすいレスポンシブ対応の「あ、いいな」と思うウェブデザインを集めています。
- デザインのこと – Web design gallery
- 2022.06.15
- ちょっと思い出しただけ
- (C)2022『ちょっと思い出しただけ』製作委員会 もくじ 『ちょっと思い出しただけ』 あ…
- いつかのこと – 無印良品の家と暮らす
- 2023.11.30
- 【jQuery】スクロールして、指定した場所から出てきて、指定した場所で消える
- 指定した場所で出したいのですよー そして指定した場所で消したいのですねー もくじ 実…
- 125naroom / デザインするところ(会社)です。