2012-06-01 18 views
6

Sto utilizzando Twitter Bootstrap con layout fisso insieme a jQuery Masonry su una pagina specifica.jQuery Masonry errata posizione superiore

Sta funzionando, tuttavia partendo dalla seconda riga le posizioni superiori delle div sono calcolate male e coprono parzialmente gli elementi della prima riga.

Sembra che lo script si interrompa prima di riorganizzare gli elementi.

Stranamente, quando apro l'ispettore in Chrome o ridimensiono leggermente il viewport, i div saltano nelle loro posizioni corrette. L'aggiornamento della pagina volte aiuta, a volte non lo fa ...

Il mio script in muratura:

jQuery(document).ready(function(){ 
    jQuery('.span9').masonry({ 
     itemSelector: '.span3', 
     columnWidth: function(containerWidth) { 
     return containerWidth/3; 
     } 
    }); 
}); 

È normale? Devo aggiungere window.resize allo script sopra?

Inserendo lo script di muratura nella pagina stessa o nell'intestazione, il piè di pagina non modifica il suo comportamento.

Sto chiamando masonry.js subito dopo jQuery, prima di qualsiasi altro Bootstrap js.

+0

No, aggiungendo 'pause resize' muratura .. – elbatron

+0

seconda fila? stai posizionando i tuoi div in file? quali elementi stai mescolando con la muratura? –

+0

Oh no, mi dispiace per la confusione, non "fila di boostrap". Ho usato la parola fila teoricamente qui. Tutti gli elementi sono span e si trovano all'interno di uno span, come puoi vedere nello script sopra. – elbatron

risposta

18

Basta leggere la sezione aiuto qui http://masonry.desandro.com/docs/help.html

lo script viene eseguito prima che tutte le immagini sono state caricate, è necessario innescare dopo la finestra di caricamento

$(window).load(function(){ 
    $('#container').masonry({ 
    // options... 
    }); 
}); 
+0

Darò via. Ha senso, dal momento che le immagini nei blocchi non hanno dimensioni definite come il layout è fluido. – elbatron

+0

Grazie a @Blac per aver indicato la sezione della guida, sembra che con il plug-in imageLoaded i blocchi non si sovrappongano l'un l'altro. – elbatron

+0

in alternativa puoi specificare l'altezza per il tag 'img' se è lo stesso – mente

Problemi correlati