può essere qualcuno avrà problemi anche, la speranza di aiuto.
per farlo funzionare con wordpress photoswipe-masonry theme è impossibile senza modifica del plugin.
accanto è legata a questa modifica e solo con muratura
a) uso lazyload dati originali = "xxx" attributo per impostare URL immagine. NON src. per te è necessario posizionare un segnaposto. potrebbe essere 1x1 pixel che verrà caricato senza lazyload.
b) questo segnaposto deve coprire TUTTO lo spazio per la futura immagine lazyloaded, OPPURE la muratura renderà tutte le immagini visibili come vista lazyloading. è perché prima delle immagini caricate ha zero dimensioni 0px x 0px. e tutte le immagini si adattano all'area visibile prima del caricamento. Lazyload conta tutto come visibile e carica tutto.
di organizzare tutti lo spazio per un'immagine futuro è necessario impostare
style = "width: xxpx; altezza: xxpx;"
solo width = "xx" e height = "xx" non è sufficiente
così un'immagine segnaposto divenne come:
<img src="http:..1x1px" data-original="http://real_image" style="width:xxpx;height:xxpx;">
quindi applicare carico pigro modo normale, e muratura. in qualsiasi ordine .
Importante - muratura larghezza aggiornamento per la sua dimensione di colonna, ma non l'altezza, quindi se il vostro dimensioni delle colonne = 50px, quindi è necessario calcolare altezza del segnaposto
new_height = 50/actual_width * actual_height;
così per tema wordpress bisogno
$scaled_height =$options['thumbnail_width']/$full[1] * $full[2];
.....
<img src="http://xxxx/1x1px.jpg" data-original='. $thumb[0] .' itemprop="thumbnail" alt="'.$image_description.'" style="width:'.$full[1].'px;height:'.$scaled_height.'px;" width="'.$full[1].'" height="'.$full[2].'"/>
....
quindi aggiungere nuove linee di sotto muratura init
var reloading = false;
$.getScript('https://cdnjs.cloudflare.com/ajax/libs/jquery.lazyload/1.9.1/jquery.lazyload.min.js',function(){
\$('.msnry_item img').lazyload({
effect: 'fadeIn',
//container: container,
threshold : 200,
skip_invisible : false,
failure_limit : 5,
load: function() {
if(! reloading)
{
reloading = true;
setTimeout(function(){
container.masonry('reload');
reloading = false;
}, 500);
}
}
});
});
Potrebbe fare lo stesso con un lazyload così posso vederlo rovinare? –
Sì, ho appena messo il carico pigro in - funziona in chrome, firefox è solo un casino! – user554954
Ok, quindi ho appena notato che ora sembra funzionare perfettamente in cromo, tuttavia lo stesso effetto strano accade in opera e firefox dove si carica stranamente! – user554954