2012-06-01 11 views
6

Estoy usando Twitter Bootstrap con diseño fijo junto con jQuery Masonry en una página específica.jQuery Masonry incorrecta posición superior

Está funcionando, sin embargo, a partir de la segunda fila, las posiciones superiores de los divs se calculan mal y cubren parcialmente los elementos de la primera fila.

Parece que el script se cierra antes de reorganizar los elementos.

Extrañamente, cuando abro el inspector en Chrome o cambio el tamaño de la ventana, los divs están saltando a sus posiciones correctas. La actualización de la página de ayuda a veces, a veces no lo hace ...

Mi script de mampostería:

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

¿Es este comportamiento normal? ¿Debo agregar window.resize al script anterior?

Al colocar la secuencia de comandos de mampostería en la página o en el encabezado, el pie de página no cambia su comportamiento.

Llamo a masonry.js justo después de jQuery, antes que cualquier otro jots de Bootstrap.

+0

No, añadiendo 'rompe resize' mampostería .. ¿ – elbatron

+0

segunda fila? ¿estás colocando tus divs dentro de las filas? ¿Qué elementos estás barajando con mampostería? –

+0

¡Oh, no, disculpa la confusión, no "fila boostrap". Usé la palabra fila teóricamente aquí. Todos los elementos son tramos y están dentro de un lapso, como se puede ver en el guión anterior. – elbatron

Respuesta

18

Basta con leer la ayuda Sección aquí http://masonry.desandro.com/docs/help.html

El script se ejecuta antes de que todas las imágenes han sido cargados, lo que tienes que disparar después de la ventana de carga

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

Lo daré. Tiene sentido, ya que las imágenes en los bloques no tienen dimensiones definidas, ya que el diseño es fluido. – elbatron

+0

Gracias @Blac por señalar la sección de ayuda, parece que con el plugin imagesLoaded los bloques no se superponen entre sí. – elbatron

+0

alternativamente puede especificar la altura para la etiqueta 'img' si es la misma – mente

Cuestiones relacionadas