jQueryを使用して、要素/テキストをhtmlのボディ部分に追加しています。そして、appendTo メソッドを使用してコンテンツを div に追加していますが、ドロップしたい場所ではなく、常に最後に追加されます。
それを達成するために使用できる方法を教えてください。
私はメール本文機能を実装しています。ここでは、何かを書き、その間の任意の場所にテキストをドロップできます。
提案してください。
JQuery バージョン 3+
コードスニペット:
<div class="row">
<div class="col-sm-4">
<div class="draggable">
<p>Name</p>
<p>Lastname</p>
<p>Age</p>
<p>City</p>
</div>
</div>
<div class="col-sm-8">
<h4>Droppable Area</h4>
<div id="contentarea" contenteditable="true" style="width:100%; height: 200px">
</div>
</div>
</div>
<script type="text/javascript">
$(document).ready(function() {
$( ".draggable" ).draggable({
revert: "invalid",
stack: ".draggable",
appendTo: 'body',
//scroll: false,
helper: 'clone',
start: function(e, ui)
{
$(ui.helper).addClass("ui_atdrag_custom_class");
},
stop: function(e, ui)
{
$(ui.helper).removeClass("ui_atdrag_custom_class");
},
});
$( "#contentarea" ).droppable({
accept: ".draggable",
tolerance: "touch",
drop: function( event, ui ) {
var droppable = $(this);
var draggable = ui.draggable;
draggable.clone().appendTo(droppable);
//$(this).find("p").addClass( "ui_dropped_content");
}
});
});
テキスト/リンクをドロップしたい場所ならどこにでもドロップする必要があります。