Jquery UI Draggable克隆消失了

时间:2015-05-24 10:10:54

标签: javascript jquery jquery-ui jquery-ui-draggable jquery-draggable

我正在尝试使用jquery-ui draggable来使某些元素可拖动。 我将helper选项设置为clone当前元素 它正确地制作了克隆,但是当我放弃克隆时,克隆消失了。它并没有停留在被拖曳的地方。

请参阅演示Fiddle Link

$('#drag').draggable({
helper: function (e, ui) {
    return $(this).clone();
}
});

我错过了什么?

2 个答案:

答案 0 :(得分:5)

可能有一种更简单的方法,但通过可拖动的数据,您可以定位处理此问题的属性。像这样:

stop : function(e, ui){
         $('#drag').draggable().data()["ui-draggable"].cancelHelperRemoval = true;
    }

小提琴:http://jsfiddle.net/n10ucrLd/

答案 1 :(得分:3)

我认为helper: 'clone'存在很多麻烦。当我定义一个droppable时,我总是让它工作。 E.g:

HTML:

<div id="drag">Drag This</div>
<div class="container"></div>

JavScript:

$('#drag').draggable({
helper: function (e, ui) {
    return $(this).clone(true);
}
});

 $( ".container" ).droppable({
    drop: function (event, ui) {
       ui.draggable.clone().appendTo($(this)).draggable();
    }
 });

实例:http://jsbin.com/vibeqaganu/1/edit?html,css,js,output