2011-03-05 14 views
13

JQuery duvar yığınının yukarıdan yukarıya nasıl çizileceğini bilen var mı? Alttan bir şeyler yığmak için bazı temel JS'leri yazdım, ancak en kısa sütun ve sonraki sütunlarda birden fazla sütun içeren tuğlaları istifleme gibi masonluk malzemeleri yapamadım. Math ile iyi olmadığımdan, kaynak koduna bakmak beni başım döndürüyor.jQuery Yukarıdan yukarıya doğru

Stacking from bottom up

Herkes denemek ister misin?

+4

Eğer bir zorlukla karşılaşıyorsanız, yarışmacılar aldığınızdan emin olmak için kriterleri daha net hale getirmeniz gerekecektir. bana yorumlamaya biraz açık gibi görünüyor ... Bloklar nereden geliyor, hangi boyutlar ve şekillerde olabilirler, ideal bir hedef en üst düzey mi? Şemadan hoşlanıyorum ve havalı bir soru için +1. – Orbit

+0

+1 Güzel soru. İkinci olsa da daha fazla özellik talebi. – polarblau

cevap

19

Bunu yapmanın ne kadar kolay olduğuna güleceksin, ancak eklentiyi değiştirmeniz gerekecek (demo). Buna

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

:

var position = (opts.fromBottom) ? { 
     left: props.colW * shortCol + props.posLeft, 
     bottom: minimumY 
    } : { 
     left: props.colW * shortCol + props.posLeft, 
     top: minimumY 
    }; 
bundan 85 (değişen gerektiği tüm bottom için top ama ekledi hem böyle ileri geri geçiş yapabilirsiniz) -

Temelde, çizgi 82 değiştirdi gi Şimdi

// 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: {} 
    }; 

:

Sonra varsayılan seçeneği eklendi Bir sadece bu gibi eklenti kullanmak:

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

Güncelleme: github üzerinde ben de forked the repository, bunları kendiniz yapmak istemiyorsanız sadece değişiklikleri indirebilirsiniz.

+0

Süper harika! Teşekkürler fudgey! Başka bir notta, başka bir ana öğe ekledim, böylece tüm yığınının yerçekimini simüle etmek için bu ebeveynin alt kısmına yerleştirebiliyorum. ([Demo] (http://aentan.com/test.html)) –

İlgili konular