Teknik Lazy Image Loading untuk Mempercepat Loading Blog Website

Teknik Lazy Image Loading untuk Mempercepat Loading Blog Website www.petrussiahaan.com

Teknik lazy image loading pada blog sangat berguna untuk mempercepat waktu muat halaman dan menghemat bandwidth. Gambar hanya dimuat ketika pengguna telah menggulir ke area gambar pada halaman blog, sehingga gambar yang tidak dilihat oleh pengguna tidak perlu dimuat. Berikut ini adalah langkah-langkah untuk menerapkan teknik lazy image loading pada blog

1. Gunakan gambar yang ukurannya telah dioptimalkan

Gunakan gambar yang ukurannya telah dioptimalkan. Pastikan ukuran gambar sesuai dengan kebutuhan dan tidak terlalu besar sehingga memakan waktu lama untuk dimuat.

2. Tambahkan class

Tambahkan class "lazy" pada tag gambar yang akan dimuat secara lazy.

<img class="lazy" data-src="gambar-lazy.jpg" alt="Gambar Lazy">

3. Tambahkan atribut "data-src"

Tambahkan atribut "data-src" pada tag gambar dengan nilai URL gambar yang akan dimuat secara lazy.

<img class="lazy" data-src="gambar-lazy.jpg" alt="Gambar Lazy">

4. Atur nilai "src"

Atur nilai "src" pada tag gambar menjadi gambar placeholder atau gambar yang ukurannya lebih kecil dari gambar asli. Ini akan membantu mempercepat waktu muat halaman dan memberikan waktu bagi gambar yang akan dimuat secara lazy untuk dimuat.

<img class="lazy" src="gambar-placeholder.jpg" data-src="gambar-lazy.jpg" alt="Gambar Lazy">

5. Tambahkan script

Tambahkan script JavaScript untuk memuat gambar ketika gambar dalam viewport.

<script>
    const lazyImages = document.querySelectorAll('.lazy');

    function loadImage(image) {
        const src = image.getAttribute('data-src');
        image.setAttribute('src', src);
        image.removeAttribute('data-src');
        image.classList.add('loaded');
    }

    function isImageInViewport(image) {
        const rect = image.getBoundingClientRect();
        return (
            rect.top >= 0 &&
            rect.left >= 0 &&
            rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&
            rect.right <= (window.innerWidth || document.documentElement.clientWidth)
        );
    }

    function lazyLoad() {
        for (let i = 0; i < lazyImages.length; i++) {
            if (isImageInViewport(lazyImages[i])) {
                loadImage(lazyImages[i]);
            }
        }
    }

    window.addEventListener('scroll', lazyLoad);
    window.addEventListener('resize', lazyLoad);
</script>

6. Tambahkan CSS

Tambahkan CSS untuk mengatur gambar placeholder dan memberikan efek transisi pada gambar ketika gambar dimuat.

<style>
    .lazy {
        opacity: 0;
        transition: opacity 0.3s ease;
    }
    .loaded {
        opacity: 1;
    }
</style>

Dengan menerapkan teknik lazy image loading pada blog, gambar hanya akan dimuat ketika pengguna telah menggulir ke area gambar. Ini akan membantu mempercepat waktu muat halaman dan menghemat bandwidth dengan menghindari memuat gambar yang tidak dilihat oleh pengguna. Selain itu, pengguna juga akan lebih nyaman dan tidak terganggu dengan gambar yang memakan waktu lama untuk dimuat.

Artikel Terkait

0 Komentar

  • Menulis kode gunakan kode (kode harus di-parse)
  • Menulis dalam syntax highlighter gunakan kode panjang (kode harus di-parse)
  • Menyisipkan gambar gunakan URL GAMBAR (ekstensi .jpg, .png, .gif, .webp, .ico)
  • Centang Beri Tahu Saya untuk mendapatkan notifikasi ke email saat ada yang membalas komentar.