繁体   English   中英

jQuery克隆不适用于可拖动

[英]jQuery clone not working with draggable

我使用jQuery的draggabledroppable以便将内容元素拖放到页面元素上:

<h2>Page</h2>

<div id='page-content'>

</div>

<div id='content-elements'>
  <div id='text-element' class='content-element'>Text</div>
  <div id='date-element' class='content-element'>Date</div>
</div>​

我的可拖动JS如下所示:

$elements.draggable({
  revert: true
});

我之所以要revert ,是因为我希望content元素返回到元素列表,并将“重复项”添加到页面中。

我尝试使用此js的droppable(使用coffeescript创建)进行此操作:

$('#page-content').droppable({
  drop: function(event, ui) {
    var $element, $me;
    $me = $(this);
    $element = $(ui.draggable);
    console.log($element.clone(false));
    return $element.clone().appendTo($me);
  }
});

这样做是获取被拖动的ui元素,尝试克隆它,然后将其附加到页面。

但是,这不起作用! 即使我可以从ui.draggable获取div等。

我创建了一个jsfiddle来说明问题: http : //jsfiddle.net/sw4Gc/2/

为什么哦为什么?

元素以处于相对位置且在元素外部的状态被克隆。 您必须删除元素样式:

var $newElement = $element.clone();
$newElement.attr('style', '');
$newElement.appendTo($me);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM