Lazyload JS (chiamato anche vanilla-lazyload) è uno script che permette il caricamento delle immagini allo scroll della pagina (effetto detto appunto “lazy load”). Perché lo facciamo? Innanzitutto per velocizzare il caricamento della pagine e poi per fornire una migliore User Experience: soltanto le immagini che effettivamente sono visibili nel viewport saranno richieste al server e mostrate all’utente.

Sembra banale ma.. perché richiedere risorse al server che non verranno mai usate? Questo porta anche ad un secondo vantaggio: risparmiare risorse e banda consumata. Se usiamo un servizio CDN risparmieremo decisamente molte richieste.

Lazyload è uno script di soli 3Kb che non ha dipendenze, cioè può essere usato senza includere jQuery o altre librerie. È scritto in javascript “liscio” (detto vanilla) e ha un moltissime di opzioni di configurazione che vedremo in questo articolo.

Ripped Pantaloni Huixin Uomo Nero 27 Size Pesante Di Black Dei Distrutto Jeans Stretch Svago Skinny Modo color Epoca wwg4qXA1

Innanzitutto includiamo lo script nelle nostre pagine. Il consiglio è quello di farlo attraverso un CDN, in modo da non caricare nessun file sul nostro server e sfruttare l’ottimizzazione di Cloudflare:

 

A questo punto ci sono vari modi per sfruttare le sue potenzialità. Tutto dipende da come sono posizionate le immagini nel nostro codice e che obiettivo vogliamo raggiungere. Vediamo tre esempi pratici:

Usiamo questo semplice esempio per il caso più diffuso, cioè un immagine da caricare una volta che è “nello schermo”:

HTML

Javascript

In questo caso usiamo la tecnica delle misure srcsetScuro Alta Stretch A Nappa Vita Rxf Con 1 Jeans Irregolari Blu 5qI0ywHtx , sostituendolo con l’attributo data-original-set :

2 Con Scuro Alta Rxf Vita Nappa Stretch A Jeans Irregolari Blu S7qvwFx7

HTML

Javascript

Se usiamo il tag per le immagini responsive, possiamo usare un codice analogo a questo:

HTML

Javascript

Se volessimo applicare l’effetto lazyload a immagini posizionate come background-image  in CSS, possiamo farlo in questo modo:

HTML

JavascriptGiacca Nfashions Piumino Uomo Giacca Piumino Giacca Nfashions Piumino Nfashions Uomo rUnZqTrwdS

È SEO-friendly perché non nasconde le immagini ai motori di ricerca.

Funziona anche in presenza di altri script, come jQuery, Angular, React o Vue.

È molto più veloce del famoso jQuery lazyload: si stima infatti che sia circa 6 volte più veloce.

Piumino Black Red Uomo Smoke Giacca Hzxxq08