【发布时间】:2020-06-29 01:23:39
【问题描述】:
我想在同一个容器中对两种类型的项目(不同的类名)进行排序。 每种类型的项目都应在其自身之间进行排序,而不会干扰其他项目类型。
我尝试了这段代码:但它不起作用:
$('#myItemsContainer').sortable({
items: '.sortType1',
start: function(event, ui) {
},
change: function(event, ui) {
},
update: function(event, ui) {
}
});
$('#myItemsContainer').sortable({
items: '.sortType2',
start: function(event, ui) {
},
change: function(event, ui) {
},
update: function(event, ui) {
}
});
HTML:
<div id="myItemsContainer">
<div class="sortType1">Item Type 1</div>
<div class="sortType1">Item Type 1</div>
<div class="sortType1">Item Type 1</div>
<div class="sortType2">Item Type 2</div>
<div class="sortType2">Item Type 2</div>
<div class="sortType2">Item Type 2</div>
</div>
【问题讨论】:
-
欢迎来到 Stack Overflow。这根本不符合逻辑。由于所有项目都在同一个容器中,因此它们基本上是一起列出的。如果您不希望将它们排序在一起,则应考虑将它们移至各自的容器中。
-
@Twisty 谢谢你的回复。现在,我尝试使用 mouseOver 事件一个项目类型。因此,如果元素是项目类型 1,我调用项目类型 1 的可排序函数并销毁项目类型 2 的可排序(反之亦然)。这样容器仍然是相同的,我可以使用多种类型,而不仅仅是 2 种类型。但我希望有另一种官方方式。
-
您实际上是在使用一组新选项重新初始化 Sortable,因此无法在同一个容器上执行此操作。
标签: javascript jquery html jquery-ui jquery-ui-sortable