jQuery масонство снизу вверх - PullRequest
13 голосов
/ 05 марта 2011

Кто-нибудь знает, как сделать кладку jQuery снизу вверх?Я написал некоторый элементарный JS, чтобы складывать вещи снизу вверх, но он не мог делать такие масонские вещи, как укладка следующего кирпича в самый короткий столбец и кирпичей, которые занимают несколько столбцов.Так как я плохо разбираюсь в математике, от просмотра исходного кода у меня кружится голова.

Stacking from bottom up

Кто-нибудь хочет попробовать?

1 Ответ

19 голосов
/ 06 марта 2011

Вы будете смеяться над тем, как легко это сделать, но вам нужно будет изменить плагин ( demo ).

По сути, я изменил строки 82 - 85 сэто (все что нужно было изменить top на bottom, но я добавил оба, чтобы вы могли переключаться назад и вперед):

    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
    };

Затем добавилопция по умолчанию:

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

Теперь вы можете просто использовать плагин, как это:

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

Обновление: Я также раздвоил репозиторий на github, так что вы можете просто загрузить изменения, если вы не хотите делать их самостоятельно.

...