perché è non funzionava
fitColumns
è un "layout orizzontale", quindi è destinato ad andare fuori al lato, invece di su e giù - simile a un gioco a scorrimento laterale. Data la loro progettazione, layout orizzontali richiedono un attributo di altezza, come documentato qui: http://isotope.metafizzy.co/layout-modes.html#horizontal-layouts
Statico Soluzione
voglio riempire la larghezza del contenitore con tuttavia molte colonne in forma, e lo voglio occupare tutto lo spazio verticale necessario.
Si desidera utilizzare masonry
anziché fitColumns
. L'impostazione di columnWidth
consente di riempire la larghezza del contenitore e di utilizzare lo spazio verticale necessario. Per esempio: http://jsfiddle.net/cUcFd/22/
$('#container').isotope({
itemSelector : '.block',
// layoutMode: 'fitColumns',
layoutMode: 'masonry',
masonry: {
columnWidth: 100
}
});
dinamica Soluzione
Dando per scontato che non si conosce la larghezza delle colonne e vuoi trovare in modo dinamico, è possibile basare fuori l'elemento più ampia #container
usando qualcosa come il codice fornito qui: https://stackoverflow.com/a/8853777/1786459
Ad esempio: http://jsfiddle.net/cUcFd/24/
var column_width = Math.max.apply(null,$('#container .block').map(function(){return $(this).outerWidth(true);}).get());
Tuttavia, spetterà a voi determinare il metodo più appropriato per impostare la larghezza della colonna.
fonte
2014-02-03 16:14:20
OP, hai trovato qualche soluzione? –