私はjQueryを使用してdraggable
おりdroppable
、コンテンツ要素をページ要素にドロップするために:
<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
、コンテンツ要素を要素のリストに戻し、「複製」をページに追加したいからです。
ドロップ可能にこのjsを使用してこれを実行しようとしました(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/
なぜああなぜ?