你不想要的一切可排序这一点。
的<li>
S IN的顶部列表应draggables与helper: 'clone'
,这helper
选项,可以拖动<li>
S的副本淘汰之列,而不改变列表本身。所以,在开始使用此:
$('#list-A li').draggable({
helper: 'clone'
});
然后,你需要做的底部列表droppable并且希望时,他们下降到克隆的元素。您可以使用drop
事件做克隆:
$('#list-B ul').droppable({
drop: function(event, ui) {
$(this).append($(ui.draggable).clone());
}
});
你希望能够在底部列表中移动的东西,这就是sortable进来,使其底部列表应该排序以及可投放。当你仅仅对它们进行排序的时候,你还必须保持克隆的可用性。您可以使用start
和stop
可排序事件来设置data
标志,然后检查可丢弃drop
事件处理程序中的该标志。像这样的排序:
$('#list-B ul').sortable({
start: function(event, ui) {
ui.item.data('sorting', true);
},
stop: function(event, ui) {
ui.item.removeData('sorting');
}
});
,然后添加一个检查到drop
事件处理程序:
$('#list-B ul').droppable({
drop: function(event, ui) {
if(ui.draggable.data('sorting'))
return;
$(this).append($(ui.draggable).clone());
}
});
演示:http://jsfiddle.net/ambiguous/PyWAM/
AHAH!辉煌! – samwise 2012-01-06 12:00:44