【发布时间】:2012-09-19 12:11:16
【问题描述】:
我有一个可拖动项目的列表,我希望能够将它们拖动到可排序的内容块上。这是我的标记:
<div class='items'>
<div class="one">One</div>
<div class="two">Two</div>
</div>
<div class="content">
<div class="block">Foo</div>
<div class="block">Bar</div>
</div>
问题是,我希望拖动的项目在拖动开始后立即“变成”一个块,并在它被放下时保持一个块。我试过这个:
$('.items div').draggable({
helper: function(e) {
return $('<div>').addClass('block').text( $(e.target).text() );
},
connectToSortable: ".content"
});
$('.content').sortable();
小提琴:http://jsfiddle.net/MF4qu/
但是,即使我创建了一个看起来像块的自定义助手,它也会在它被拖放后立即恢复为原始拖动元素。有谁知道如何在我的示例页面中正确插入一个块?我已经查看了 UI API,但无法弄清楚。
【问题讨论】:
-
在拖动事件结束时(例如在
sortupdate事件中),您能否将block类添加到放置的元素? -
您有机会尝试我的解决方案吗?
标签: javascript jquery jquery-ui draggable droppable