2017-06-09 16 views
0

私はドラッグの&ドロップ機能を実装しようとしていますが、jQueryを使用して&これは素晴らしい作品です、今私は古い場所で別のドラッグした要素を置き換えたいです。jQueryで要素をクローンする方法は?

私はclone()メソッドを使用していますが、私はjQueryを初めて使用しているので、私がコードを書き込んだコードは無限にクローンしてくれました。

これは私のコードです:

<script> 
$(function() { 
    $(".draggable").draggable(
     { 
      drag : function(event, ui) { 
       $(this).clone().appendTo(this) 
      } 
     }); 

    $(".droppable").droppable({ 
     drop: function(event, ui) { 
      $(this).addClass("ui-state-highlight") 
     } 
    }); 
}); 
</script> 
+0

あなたはドラッグハンドラ内の要素のクローンを作成します。ドラッグに割り当てられた機能は、要素をドラッグしている間、常に呼び出されます。ハンドラをstart:またはstop:のいずれかに割り当てると、ドラッグを開始または停止するときにクローンを作成できますが、ドラッグ中は繰り返しは行いません。 – Flyer53

+0

はい私はそれをfugured、しかし私はどのようにこれらのメソッドに割り当てることができますか? –

+0

[複製可能なクローンを作成してドロップブルにドロップすると、再びドラッグできません](https://stackoverflow.com/questions/867469/when-i-make-a-draggable-clone-and-ドロップ可能な - 私は - それを再びドラッグすることはできません) – Sandman

答えて

0

これは基本的に動作します。しかし、必要に応じて調整する必要があります。

var dropclone; 
 
$(".draggable").draggable({ 
 
    start: function (event, ui) { 
 
     dropclone = ui.helper.clone(); 
 
    } 
 
}); 
 
$(".droppable").droppable({ 
 
    drop: function() { 
 
     $('body').append(dropclone); 
 
    } 
 
});

関連する問題