0

我是 JQuery 的初学者。我的问题是我想插入拖动的项目,但有时我想交换两个元素。我不知道怎么解决。

4

1 回答 1

2

对于交换,您可以执行以下操作:

您必须将现有订单转换为数组,首先定义一个:

var prevPagesOrder = [];

然后在删除元素后检查数组(由 sortable 的停止捕获)

$( "#sortable" ).sortable({
    start: function(event, ui) {
       prevPagesOrder = $(this).sortable('toArray');
    },
    stop: function(event, ui) {
        var currentOrder = $(this).sortable('toArray');
        var move_id = ui.item[0].id;
        var swap_index = currentOrder.indexOf(move_id);
        var swapped_id = prevPagesOrder[swap_index]

        // do stuff for swapping
        // move_id = object moved
        // swapped_id = object swapped with
        }
        return true;
    }
}).disableSelection();

希望这可以帮助。如果将来您向人们展示您迄今为止所做的尝试,那就太好了。

于 2013-11-11T14:16:04.487 回答