列表项上的可排序和可拖动行为

Sortable and draggable behavior on list items

本文关键字:拖动 排序 列表      更新时间:2023-09-26

我来这里是因为我在使用jQuery UI的可排序/可拖动/可删除时遇到问题。

我正在尝试做类似iTunes播放列表的事情(当您更改曲目列表的顺序或将曲目移动到另一个播放列表时)这个想法是我有一个曲目列表(在一个)中,我希望这个列表是可排序的,这是简单的部分。事实上,我还有第二个列表(播放列表),我希望曲目可以拖动到那些"播放列表"项目以执行某些操作。

举个例子: http://jsfiddle.net/MSGhf/1/

(可排序对象完全按照我想要的方式工作,黑线只是一个<div class="plholder"></div>

但是当您开始拖动曲目时,可排序工作正常。但是,当您将曲目移出可拖动项时,新顺序会保留,因此在播放列表上拖动曲目也可能更改曲目列表顺序,这是一个问题。

所以我不知道当轨道离开它时如何阻止可排序对象。

如果你有任何想法:)

谢谢!

啊,好的,我知道发生了什么。这是你想要做的(工作示例,在这里:http://jsfiddle.net/mori57/L3CF8/1/)

    $(".droppable").droppable({
        tolerance: "pointer",
        drop:function(){
            // You need to tell your sortable to cancel 
            // the last drag/drop interaction
            $("ul").sortable("cancel");
            alert("Do something on drop ...");   
        }
    });