2012-08-23 62 views

回答

1

我已經得到了它的大部分的方式出現:

http://jsfiddle.net/Ge7eK/41/

receive: function(event, ui){ 
    var ele = document.elementFromPoint(ui.position.left, ui.position.top); 
    var newEle = ui.item.clone();   
    newEle.attr("id", ""); // trying to prevent duplicate ids 
    $(ele).after(newEle);    
}, 

remove: function(event, ui){ 
    event.preventDefault(); // this stops the item from being removed 
} 

還有,當你拖動從,說列表A中的項目列表B中發生的錯誤,然後將另一個項目列表A複製該項目。我不確定它爲什麼會發生,但它可能與您使用的ID有關。

此外,放置位置可以有點挑剔。如果您的佔位符項目位於列表中的兩個項目之間(而不是輕微重疊),則會將該項目添加到列表的末尾。

+0

我應該注意到我正在使用'elementFromPoint',因爲我找不到可用排序插件在可用回調參數中使用的插入點。 – Shmiddty

+0

哇,謝謝。這似乎很好地確保from元素被複制,而不是移動。我試圖找出漏滴蟲,但是非常感謝。 –

+0

@JeffFuller我建議不要在該模式中聲明id,除非它是完全必要的。 – Shmiddty