Escludere plugin lazy load dalla sidebar

Escludere plugin lazy load dalla sidebarL’ottimo plugin Lazy load che permette di caricare le immagini solamente una volta che vengono viste, presenta un piccolo difetto… a volte capita che le immagini presenti nella sidebar oppure in alcuni plugin, non vengono caricate o tardano nel caricamento lasciando al loro spazio una brutta immagine grigia.
Per ovviare a questo problema si può pensare di far caricare le immagini tramite lazy load solamente alle immagini del post, ed escludere tutto il resto del blog.
Ecco il codice che permette di fare ciò:

jQuery("#content").find("img").lazyload({

Questo codice va inserito al posto della riga 27 del file jq_img_lazy_load.php (nella cartella del plugin), ovvero:

jQuery("img").lazyload({

In questo modo verranno selezionate tramite JQuery tutte le immagini presenti nel div #content, solitamente è il div che contiene tutto il post, altrimenti sostituisci il nome del tuo div che contiene il post —-> #tuo-div .
E’ possibile anche selezionare più div contemporaneamente, ad esempio se hai immagini sia nel post che nel footer dovrai utilizzare:

jQuery("#content,#footer").find("img").lazyload({

Ovvero basta separare più div con una virgola.
Ti segnalo un articolo in inglese che spiega bene i selettori per JQuery.

Sei riuscito a far caricare tramite lazy load solo le immagini del post escludendo la sidebar o altre parti?

VUOI CREARE IL TUO SITO O BLOG WORDPRESS?

Scegli uno tra i migliori hosting per WordPress

HOSTING

Scegli uno tra i migliori hosting per WordPress

Hosting

Scegli uno tra i migliori temi WordPress professionali

GRAFICA

Scegli uno tra i migliori temi WordPress professionali

Grafica

Guide e risorse per gestire il sito WordPress a 360°

GESTIONE

Guide e risorse per gestire il sito WordPress a 360°

Gestione
  
con le dita sempre in costante, frenetico movimento sulla tastiera… vengo spesso trascinato e catturato “in rete” per colpa delle mille idee che mi girano per la testa (prima o poi troverò quella giusta)… dal futuro incerto (nonostante una laurea, e chi non lo è?..siamo in tanti!) .. credo fortemente nella condivisione della conoscenza!
8 Commenti
  • Ciao Roberto,
    innanzitutto complimenti, perchè pare che questo sia l’unico articolo in italiano che tratta il tema in questione.
    Ho provato a fare quanto dici, ma alla riga 27, il mio codice non è quello che indichi tu – questo: jQuery(“img”).lazyload({ – ma è quest’altro:

    jQuery(“img”).not(“.cycle img”).lazyload({

    Ho provato comunque la sostituzione, ma il plugin ha smesso di funzionare.
    Poichè non sono un tecnico, posso chiederti di darmi una mano?
    Possibile che abbiamo 2 diversi codici per lo stesso plugin?
    Forse il tuo è una vecchia release?

    Grazie anticipatamente,
    Josè

    • Ciao Jose’,
      esatto, la mia versione è vecchia, è la v0.10…
      Non ho la nuova versione sotto mano, per cui non sono cose verificate quelle che ti stò per dire:

      prova aggiungendo jQuery("#content"). al codice che hai, così da diventare:

      jQuery("#content"). jQuery(“img”).not(“.cycle img”).lazyload({

      Vediamo che succede…
      PS: fai sempre un backup dei file che modifichi

  • Niente da fare!
    🙁
    Purtroppo cambiando la stringa, è come se si disattivasse il plugin…
    Hai altre soluzioni?

    • Domani vedo di installarlo in locale e di fare qualche prova, poi ti farò sapere

      • Grazie!
        Sei grande!
        ^_^

        • Purtroppo non sono riuscito a fare ciò che volevi, ho dato solo una sbirciatina e fatto alcune prove ma niente.
          Ti posso mettere a disposizione la vecchia versione del plugin già modificata (è quello che uso io al momento). Con questa dovrebbe andare, fai pure la prova se vuoi.

  • Grazie Roberto!
    Uno dei miei programmatori ha risolto la cosa.
    Tecnicamente non so cosa ha fatto, ma me lo farò spiegare e ci faremo un articolo che semmai ti segnalo.
    Adesso – seguendo i tuoi consigli di un altro articolo – ho messo il plugin JavaScript to Footer che mi velocizza il caricamento notevolmente, ma annulla l’azione di jquery a cui mi stavo affezionando…
    🙂
    Adesso sono in preda ad un dubbio amletico: jquery o javascript footer?
    Ai posteri l’ardua sentenza!
    😀
    Grazie 1000 di tutto,
    Josè

    • Ottimo 🙂