jQuery UI可排序 - 单击时拖动元素

时间:2014-09-29 12:20:52

标签: javascript jquery jquery-ui jquery-ui-sortable

我有两个街区,"可拖动"和"可排序"。内部"可拖动"我有几件物品可以将它们拖到"可排序"。

我想有可能点击里面的项目" draggable"并自动将其拖入" sortable"。

这是我的JS:

$(".sortableList").sortable({
   placeholder: 'ui-state-highlight',
});

$('.sortableList').disableSelection();

$(".draggable").draggable({
 connectToSortable: '.sortableList',
 cursor: 'pointer',
 helper: 'clone',
 revert: 'invalid',
 start: function (event, ui) {
     $(this).addClass('testing');
 }
});

这是jsbin

任何想法如何将元素拖动到"可排序"点击它们?

2 个答案:

答案 0 :(得分:1)

添加一个点击处理程序,告诉它将目标附加到sortable。然后刷新选择。

http://jsbin.com/fukutomometu/5/

 $("#sidebar-wrapper").on("click", ".draggable", function(e){
     $(".sortableList").append(e.target).sortable('refresh');
 });

如果您不希望它再拖动,您也可以从目标中添加和删除相关的类。

如果您不想移动原件,请$.clone代替$.append。并稍微改变顺序:

$(e.target).clone().appendTo(".sortableList");

相关问题:

Add to Jquery-ui sortable list

答案 1 :(得分:0)

你的问题不在于编码,而在于缺少一些css。

添加:

.sortableList li {
   width:150px; /*This was already set*/
   height:250px;
   background-color:blue;
}

另外,请考虑使用id作为可排序列表,而不是类。