Lazy Loading Nedir?
Özellikle büyük web projelerinde, sayfanın tüm öğelerini yüklemek oldukça zaman alabilir. Görseller, dinamik içerikler ve iframe'ler, sayfanın açılma hızını olumsuz etkileyebilir. Lazy loading, bu öğelerin yalnızca gerekli olduğunda yüklenmesini sağlayarak sayfanın hızlı açılmasını sağlar.
SEO ve Lazy Loading: Hızlı Yükleme, Yüksek Sıralama
Ancak, lazy loading SEO'ya zarar verebilir mi? Eğer yanlış uygulanırsa, arama motorları sayfanızdaki öğeleri gözden kaçırabilir. İşte bu yüzden doğru teknikleri uygulamak çok önemlidir. Lazy loading, sadece sayfa içeriğinin görünür kısmını yüklerken, SEO uyumlu hale getirilmesi için dikkat edilmesi gereken bazı teknik detaylar bulunur.
Lazy Loading Teknikleri ve Uygulama Senaryoları
# 1. Görseller İçin Lazy Loading
Görseller, web sayfalarının büyük kısmını oluşturur ve genellikle en fazla veri tüketen öğelerdir. Bu nedenle, görsellerin lazy loading ile yüklenmesi, sayfanızın hızını önemli ölçüde artırabilir. Özellikle uzun bir ürün sayfası ya da blog postu oluşturduysanız, görsellerin yalnızca kullanıcı tarafından görüntülenen alanda yüklenmesi performansı ciddi oranda iyileştirecektir.
document.addEventListener("DOMContentLoaded", function() {
const images = document.querySelectorAll("img[data-src]");
images.forEach(img => {
img.setAttribute("src", img.getAttribute("data-src"));
});
});
# 2. Dinamik İçerikler İçin Lazy Loading
Dinamik içerikler, özellikle iframe’ler, harita entegrasyonları ve video embed’leri için lazy loading kullanmak oldukça faydalıdır. Bu tür öğeler sayfa açıldığında hemen yüklenmez, çünkü genellikle kullanıcıların ilk başta görmeyeceği içeriklerdir.
const iframes = document.querySelectorAll("iframe[data-src]");
iframes.forEach(iframe => {
iframe.setAttribute("src", iframe.getAttribute("data-src"));
});
# 3. JavaScript Framework’leri ile Lazy Loading
Modern JavaScript framework’leri, lazy loading’i entegre etmek için harika özellikler sunar. Örneğin, React ve Vue.js gibi framework’ler, lazy loading’in entegrasyonunu daha da kolaylaştıran kütüphaneler sağlar.
import React, { Suspense, lazy } from 'react';
const LazyComponent = lazy(() => import('./LazyComponent'));
function App() {
return (
Loading...