2014-01-22 38 views
3

我正在使用同位素砌體(版本2 Beta 7)嘗試對未排序的項目1至8進行排序。同位素砌體自動佈局覆蓋sortby?

誰有優先級砌體自動佈局或getSortData選項?

我有4列和2行未排序:

1 2 3 4 
5 8 7 6 

但我想是這樣的:

1 2 3 4 
5 6 7 8 

我正在使用的代碼如下:

<div id="container" class='isotope'> 
    <div class='item'> 
     <img src="http://placehold.it/185x92" width="185" height="92" alt=""> 
     <div> 
      <span class='titulo'>H</span> 
      <span class='orden'>1</span> 
     </div> 
    </div> 
    ... 
</div> 


$(function(){ 

var $container = $('#container'); 
$container.isotope({ 
    itemSelector: '.item', 
    masonry: { 
     columnWidth: 185, 
     gutter: 10, 
     isFitWidth: true, 
    }, 
    getSortData : { 
     numero : '.orden parseInt', 
     titulo : '.titulo' 
    }, 
    sortBy : 'numero', 
}); 
}); 

完整的代碼在Fiddle

非常感謝。

回答

0

排序定義了項目在佈局中的插入順序。但是,實際位置是砌體算法的結果。現在這裏存在固有的問題:有序佈局和空間有效佈局是兩個正交的東西。

因此,您無法同時獲得有保證的訂購和砌築。您必須決定是否可以放棄其中一項要求。如果您確實不需要訂購保證,您仍然可以避開您的解決方案,因爲訂購可以作爲某種優先級(這意味着早期商品很有可能在佈局早期出現)。