2012-04-15 17 views
6

Así que estoy usando el isótopo masonry diseñojQuery para la altura automática en el elemento

$('section').isotope({itemSelector:'article',layoutMode:'masonry',transformsEnabled: false, animationEngine: 'jquery',masonry:{columnWidth:8}});

El problema es que si no se establece la altura de la article en css, el diseño doesn No se ven bien los elementos se superponen y esas cosas, pero no puedo establecer una altura fija para los elementos, ya que son publicaciones de blog y pueden cambiar de tamaño, ¿tienen algún consejo sobre cómo resolver esto?

Respuesta

23

Problema resuelto, es necesario llamar a $(window).load instead of $(document).ready(

+0

funciona para mí también, aunque utilizando la disposición defaul. Es interesante que el ejemplo de isótopos defecto usa '$ ready (documento)()' .. [link Codepen] (http://codepen.io/desandro/pen/nFrte) – Cammy

+0

Mientras carga ventana puede trabajar, yo no lo recomiendo . la carga de la ventana espera a que se carguen TODOS los activos en la página (CSS, JS, img, iframe, etc.). imagesLoaded es más adecuado, ya que solo puede orientar las imágenes dentro de la instancia de Isótopo para cargar. – desandro

8
var $container = $('#container').imagesLoaded(function() { 
    $container.isotope({ 
    // options 
    }); 
}); 

Ver Isotope - imagesLoaded

+0

Tienes razón. La página anterior devuelve 404 que no se encuentra ahora. – Kanu

+0

información está aquí ahora: http://isotope.metafizzy.co/layout.html#imagesloaded – wintersolutions

+0

Esta debe ser la respuesta aceptada, su parte del autor, después de todo – Blowsie

0

Este acaecer a causa de isótopos Doe no sabe el tamaño antes de la carga. La mejor forma de hacerlo es usar un indicador de carga (tal vez con el plugin imageLoaded) para cargar las imágenes y luego realizar una inserción o agregar un isótopo. Tendrás una navegación fluida y la ilusión de un sitio de carga más rápido que usando $ (ventana) .load().

Cuestiones relacionadas