link:https://github.com/angular-ui/ui-sortable
如果您将关注该链接,您将会知道我们可以很好地对一个项目进行排序。
我的情况:假设我有10个盒子(来自db的物品)1到10.在第一个,第3个,第5个和第7个项目中我说有一些标志(superset == true
)然后是下一个项目(相邻)到它分别是第2,第4,第6,第8和第10。
我可以拖动任何物品,但我想要的就像我找到的那样
任何项目中的superset
标志== true然后不仅该项目应该是可拖动的,而且相邻的项目应该可以拖动它。
意思是,如果我拖动第一个项目并且该项目有superset == true
,那么它的下一个项目也应该可以用第一个项目拖动。
我发现了一些多提示形式的提示,但为此,首先我必须手动点击我不想要的多个项目。
myAppModule.controller('MyController', function($scope) {
var array = [{
'item': 1,
'superset': 'true'
},
{
'item': 2,
'superset': 'false'
},
{
'item': 3,
'superset': 'true'
},
{
'item': 4,
'superset': 'false'
},
{
'item': 5,
'superset': 'true'
},
{
'item': 6,
'superset': 'false
},
{
'item': 7,
'superset': 'true'
},
{
'item': 8,
'superset': 'false'
},
{
'item': 9,
'superset': 'true'
},
{
'item': 10,
'superset': 'false'
}
];
$scope.sortableOptions = {
start: function(e, ui) { ...
},
stop: function(e, ui) { ...
},
update: function(e, ui) { ...
},
};
});
<ul ui-sortable="sortableOptions" ng-model="array">
<li ng-repeat="item in array">{{ item }}</li>
</ul>
我的代码有这样的功能,但这里粘贴的代码可能有一些错误,但在我的最后,代码工作正常。正如预期的那样,我可以对任何项目进行排序。我无法粘贴属于私人组织的实际代码。