2011-03-05 23 views
13

¿Alguien sabe cómo hacer la pila de mampostería jQuery de abajo hacia arriba? Escribí algunos JS rudimentarios para apilar cosas de abajo hacia arriba, pero no podía hacer cosas de albañilería como apilar el siguiente ladrillo en la columna más corta y ladrillos que abarcan varias columnas. Como no soy bueno con las matemáticas, mirar el código fuente me marea.jQuery Masonry de abajo hacia arriba

Stacking from bottom up

Alguien quiere probar?

+4

Si está planteando un desafío, tendrá que aclarar los criterios para asegurarse de obtener los concursantes. Parece un poco abierto a la interpretación para mí ... ¿De dónde vienen los bloques, qué tamaños y formas pueden tener, es el objetivo ideal una tapa plana? Aunque me gusta el diagrama, y ​​+1 para una pregunta genial. – Orbit

+0

+1 Buena pregunta. Segundo, la solicitud de más detalles. – polarblau

Respuesta

19

Te vas a reír de lo fácil que es hacer esto, pero necesitarás modificar el complemento (demo).

Básicamente, he cambiado la línea 82 - 85 de esta (todo lo que necesitaba cambiar era top a bottom pero he añadido tanto para que pueda cambiar de ida y vuelta):

var position = { 
     left: props.colW * shortCol + props.posLeft, 
     top: minimumY 
    }; 

a esto:

var position = (opts.fromBottom) ? { 
     left: props.colW * shortCol + props.posLeft, 
     bottom: minimumY 
    } : { 
     left: props.colW * shortCol + props.posLeft, 
     top: minimumY 
    }; 

Luego añade la opción en los valores por defecto:

// Default plugin options 
    $.fn.masonry.defaults = { 
    singleMode: false, 
    columnWidth: undefined, 
    itemSelector: undefined, 
    appendedContent: undefined, 
    fromBottom: false, // new option 
    saveOptions: true, 
    resizeable: true, 
    animate: false, 
    animationOptions: {} 
    }; 

Ahora usted c un sólo tiene que utilizar el plugin de esta manera:

$('#masonry').masonry({ fromBottom: true }); 

Actualización: También forked the repository en github, por lo que sólo puede descargar los cambios si no quiere hacer por sí mismo.

+0

¡Súper genial! Gracias fudgey! En otra nota, agregué otro elemento padre para poder ubicar toda la pila en la parte inferior de este elemento primario para simular la gravedad. ([demo] (http://aentan.com/test.html)) –

Cuestiones relacionadas