2

我正在开发的这个网站可以在这里找到。这是一个摄影网站,我的客户要求我实现一些东西,让她可以移动照片并改变它们出现的顺序。它们来自 MySQL 数据库并使用 jQuery Masonry 显示。

我立刻想到了 jQuery UI Sortable,我一直在尝试实现它,但完全没有运气。我怎样才能做到这一点?有人可以指出我正确的方向吗?

提前致谢!

4

1 回答 1

3

我在同一个问题上苦苦挣扎,到目前为止,我的答案是使用 jquery 的可排序开始、停止、更改和排序事件来更改类。像这样:

$('#sortable').sortable({    
        start:  function(event, ui) {            
                 console.log(ui); 
            ui.item.removeClass('masonry');
            ui.item.parent().masonry('reloadItems')
                },
        change: function(event, ui) {
            ui.item.parent().masonry('reloadItems');
                },
        stop:   function(event, ui) { 
            ui.item.addClass('masonry');
            ui.item.parent().masonry('reloadItems');
});

这是一个工作示例 和一个关于该主题的JS Fiddle 。这是一个开始。

然而,这不是一个“presto”解决方案,这个例子适用于旧版本的砌体,最新版本有一些错误,因为“reload”方法被 layout() 和 reloadItems() 取代。或者......如果它适合你,你可以使用旧的砖石版本。

或者,您可以使用jQuery.Shapeshift(),它基本上可以满足您的需求。

于 2013-10-16T22:36:07.327 回答