Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Pacery水平布局从左到右排序_Javascript_Jquery_Css_Jquery Isotope_Packery - Fatal编程技术网

Javascript Pacery水平布局从左到右排序

Javascript Pacery水平布局从左到右排序,javascript,jquery,css,jquery-isotope,packery,Javascript,Jquery,Css,Jquery Isotope,Packery,我在用 显示从左到右的顺序,但不用于: 使用水平布局,它默认为从上到下的: 问题:两年前,他说无法订购,但此后就再也没有看到任何文档。我真的需要从左到右为水平布局排序。我怎样才能做到这一点 var $grid = $('.grid').packery({ isInitLayout: false, horizontal: true, originLeft: true, gutter: 10, }); ... function orderItems() {

我在用

显示从左到右的
顺序,但不用于:

使用水平布局,它默认为从上到下的

问题:两年前,他说无法订购,但此后就再也没有看到任何文档。我真的需要
从左到右
水平
布局排序。我怎样才能做到这一点

var $grid = $('.grid').packery({
    isInitLayout: false,
    horizontal: true,
    originLeft: true,
    gutter: 10,
});

...

function orderItems() {
    var itemElems = $grid.packery('getItemElements');
    $( itemElems ).each( function( i, itemElem ) {
        $( itemElem ).text( i + 1 );
    });
}

$grid.on( 'layoutComplete', orderItems );
$grid.on( 'dragItemPositioned', orderItems );

似乎不提供从左到右的排序

所以我改为按元素位置排序:

var itemElems = $grid.packery('getItemElements');

let sorted = $(itemElems).sort((a, b) => {
                let $a = $(a);
                let $b = $(b);
                let aTop = $a.position().top;
                let aLeft = $a.position().left;
                let bTop = $b.position().top;
                let bLeft = $b.position().left;
                return parseFloat(aTop) - parseFloat(bTop) || parseFloat(aLeft) - parseFloat(bLeft);
            });