勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

バニラJS対応(jQuery非依存)の画像遅延読み込みライブラリ「lazysizes」の利用方法

   2024/08/23  JavaScript

あるサイトのコーディングデータを貰った際に「lazysizes」というJavaScriptのファイルが読み込まれており、これは何なのかと調べたところ画像遅延読み込み系のライブラリみたい。また「lazyload」と違いはバニラJS対応(jQuery非依存)及び軽量とのこと。以下に使用方法をメモ。

 

lazysizes

GitHub

https://github.com/aFarkas/lazysizes

CDN

CDNで使う場合は以下を記述する。

<script src="https://cdnjs.cloudflare.com/ajax/libs/lazysizes/5.3.2/lazysizes.min.js"></script>

異なるバージョンを使用したい場合は以下から探す。

https://cdnjs.com/libraries/lazysizes

 

サンプル

https://taitan916.info/sample/lazysizes/

サンプルページでは軽めの画像を使用しているため、ブラウザの開発者ツール→ネットワークで見た方が(遅延読み込みされているのが)分かりやすい。

 

利用方法

以下が基本的な使い方になる。

<img src="ダミー画像のパス" data-src="遅延読み込みさせる画像のパス" class="lazyload">

サンプルページの場合だと以下ソースコードになる。

<div><img src="./img/dummy.jpg" data-src="./img/001.jpg" class="lazyload"></div>
<div><img src="./img/dummy.jpg" data-src="./img/002.jpg" class="lazyload"></div>
<div><img src="./img/dummy.jpg" data-src="./img/003.jpg" class="lazyload"></div>
<div><img src="./img/dummy.jpg" data-src="./img/004.jpg" class="lazyload"></div>
<div><img src="./img/dummy.jpg" data-src="./img/005.jpg" class="lazyload"></div>

 

その他

ライブラリを使わずにHTMLで遅延読み込みを行いたい場合

lazyload.js等のライブラリを使わずHTMLのみで画像の遅延読み込みを行う方法

lazyloadで遅延読み込みを行いたい場合

jQueryで画像を遅延ロードする「jquery.lazyload.js」の利用方法

 - JavaScript

  関連記事

横スクロール可能な要素を視覚的に分かりやすくする「ScrollHint」ライブラリの利用方法

横長のtableを設置し、CSSのoverflowで横スクロール可能にしてもユー ...

JavaScriptのライブラリ「crypto-js」を使用して暗号化・復号化・ハッシュ化する方法

JavaScriptにてCookie等にデータを保存する際に暗号化したものを保存 ...

JavaScriptで画像読み込み完了のタイミングを検知する「imagesLoaded」ライブラリの利用方法

大き目のサイズの画像をページに設置すると読み込み完了まで時間がかかる。その画像が ...

JavaScriptにて「QRCode.js」ライブラリを利用してQRコードを生成する方法

PHPが使えない環境で動的にQRコードを生成したかった。以前にメモしたAPI等の ...

JavaScriptにて数値のカウントアップ及びカウントダウンを表示する「countUp.js」ライブラリの利用方法

だいぶ前にバニラJSにて数値のカウントアップ及びカウントダウン表示を行う方法をメ ...