勉強したことのメモ

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

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

   2024/10/01  JavaScript

大き目のサイズの画像をページに設置すると読み込み完了まで時間がかかる。その画像がスライダー等に組み込まれていた場合、画像が読み込まれずにエラーになるといったケースが偶にある。「imagesLoaded」ライブラリも使用すると画像読み込み完了のタイミングが検知できるのでその辺りの問題を解決できそう。以下に利用方法をメモ。

 

imagesLoaded

公式サイト

https://imagesloaded.desandro.com/

GitHub

https://github.com/desandro/imagesloaded

CDN

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

<script src="https://unpkg.com/imagesloaded@5/imagesloaded.pkgd.min.js"></script>

 

サンプル

https://taitan916.info/sample/imagesLoaded/

画像読み込み完了後にアラートが表示される筈。

 

利用方法

ソースコード

<script src="https://unpkg.com/imagesloaded@5/imagesloaded.pkgd.min.js"></script>
<script>
//バニラJSの場合
imagesLoaded( document.querySelector('.img_area'), function( instance ) {
    alert('画像読み込み完了');
});

//jQueryの場合
$('.img_area').imagesLoaded( function() {
    alert('画像読み込み完了');
});
</script>

 

所感

今までだと苦肉の策でsetTimeoutで対応していたが、このライブラリで解決できた(slickで確認済み)。

 - JavaScript

  関連記事

LightboxをjQuery無しで実装できる「Luminous」の利用方法

あるサイトのコーディングデータを貰った際、jQueryは使用していないのにLig ...

Ajaxでプラグイン無しのファイルアップロード方法

画像ファイルを添付できて、尚且つAjaxを用いた非同期通信のフォームを作りたかっ ...

JavaScriptのマップ用ライブラリ「MapLibre GL JS」の利用方法

あるサイトをWappalyzerで調査していた際に「MapLibre GL JS ...

バニラJavaScriptでリッチなセレクトメニュー(プルダウン)を実装できる「Tom Select」の利用方法

先日バニラJavaScriptでリッチなセレクトメニュー(プルダウン)を実装でき ...

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

あるサイトのコーディングデータを貰った際に「lazysizes」というJavaS ...