【发布时间】:2013-01-29 10:56:21
【问题描述】:
我有两列带有可拖动的 li 元素。当我将元素从一列拖动到另一列时,我需要克隆拖动的元素并将其附加到新列(我希望元素也保留在前一列中)。
ls.droppable({ // ls refers to the column containing draggable elements
greedy:true,
hoverClass: 'drop-hover',
over: function (e, u) {
},
drop: function (e, u) {
afterDrop(u, $(this));
}
});
afterDrop 函数是
window.afterDrop = function (u, ls) {
var c = u.draggable.clone(true, true);
var d = jQuery('.onestrip', ls);
d.append(c);
}
现在,当我在另一列中拖动新添加的元素时,前一列中的旧元素被拖动。如何将单独的可拖动元素附加到被拖动的元素(我尝试禁用然后再次附加可拖动元素,但仍然相同)
编辑: 我也遇到过类似的情况,看看这个链接http://jsbin.com/aseqid/4/edit .... 尝试将红色框拖放到绿色框中。然后再次尝试拖动先前放置的红色框...拖动事件未附加到放置的红色框...我已尝试将事件附加到放置的框,但它仍然引用原始红色框
【问题讨论】:
-
你试过使用 helper:'clone' ???
-
我试过了,但没有用..我认为一旦我们放下助手就会被破坏..克隆它也没有为我提供解决方案
-
你能提供一个js小提琴吗? M 不确定我是否理解您的问题
-
jsbin.com/aseqid/4/edit将红色方块拖入绿色方块,再次尝试拖拽之前拖过的方块......
标签: jquery jquery-ui draggable jquery-ui-draggable jquery-draggable