你不想要的一切可排序這一點。
的<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