JavaScript

画像を遅延読込する方法【lazysizes.js】

lazysizes.jsを使ってサイトに掲載してる画像を遅延読込し表示させる方法をご紹介します。
画像の表示スピードはSEOにも影響するので遅延読込前と後で「PageSpeed Insights」で表示速度を計測してみて下さい。

画像を遅延読込し表示させるCSSの記述

※ここは重要ではないので必要に応じて変更して下さい。

<style type="text/css">
body{
  font-family:Verdana,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W6",Osaka,"MS Pゴシック",Arial,sans-serif;
  padding: 0;
  margin: 0;
  line-height: 1.8em;
}
h1{
  font-size:16px;
  text-align:center;
  font-weight:normal;
  padding:10px 0;
  position: relative;
}
.wrap1{
  width: 90%;
  margin: 0 auto;
  padding-top: 800px;
  text-align: center;
}
.wrap2{
  width: 90%;
  margin: 0 auto;
  padding-top: 800px;
  text-align: center;
}
</style>
<!-- lightgallery.js CSS -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/lightgallery-js/1.2.0/css/lightgallery.min.css" />

lazysizes.jsを使ってimgに設定した画像を遅延読込するHTML記述

※imgタグに「class=”lazyload”」を追加し、「src=”loading.gif”」は遅延読込前の画像として表示されるので容量が軽い画像を設定します。
 「data-src=”~”」に遅延読込表示する画像を設定します。

<h1>下にスクロールすると2枚の画像を遅延読込・表示します</h1>

<div class="wrap1">
<img class="lazyload" src="loading.gif" data-src="technology-1283624_1280.jpg" alt="">
</div>
<div class="wrap1">
<img class="lazyload" src="loading.gif" data-src="capwp210804-768x768.jpg" alt="">
</div>

lazysizes.jsを使ってサイトに掲載してる画像を遅延読込し表示させるJavaScriptの記述

※ページの下に以下を記述し「lazysizes.min.js」ファイルを読み込むだけです。

<script src="lazysizes.min.js"></script>

lazysizes.jsを使って画像を遅延読込するデモページ

lazysizes.jsを使って画像を遅延読込するデモ

lazysizesのソース元

以下がソース元になります。以下からlazysizes.min.jsをダウンロードできます。
lazysizes

 

※流用される場合は自己責任でお願いします。
 デモページタグ内のGoogleアナリティクスタグは流用しないで下さい。