ПРОВЕРОЧНЫЙ КОД — http://jsfiddle.net/reGb3/
Я использую сортируемые списки jQuery, для которых я хотел бы перетащить элемент из одного списка в другой. У меня это работает (см. тестовый код), когда основные категории расширены, но если основной список свернут, я не могу получить отброшенный элемент для успешного заполнения скрытого списка. Я прохожу часть пути, делая элементы списка основной категории «выпадающими», а затем расширяя список, но затем мне нужно снова выполнить операцию перетаскивания. Есть ли способ сделать это либо со свернутой основной категорией (предпочтительно), либо с дополнительным шагом расширения?
HTML:
<ul data-role="listview" class="sortable-list" data-filter="true">
<li data-role="collapsible" data-iconpos="right" data-inset="false">
<h2 class="droppable" id="cat1">EMPTY</h2>
<ul data-role="listview" data-theme="b" class="sortable-list1" >
</ul>
</li>
<li data-role="collapsible" data-iconpos="right" data-inset="false" >
<h2 class="droppable" id="cat2">Birds</h2>
<ul data-role="listview" data-theme="b" class="sortable-list1">
<li id="id1"><a href="#">Condor</a></li>
<li id="id2"><a href="#">Eagle</a></li>
<li id="id3"><a href="#">Sparrow</a></li>
</ul>
</li>
<li data-role="collapsible" data-iconpos="right" data-inset="false" >
<h2 class="droppable" id="cat3">Fish</h2>
<ul data-role="listview" data-theme="b" class="sortable-list1">
<li id="id4"><a href="#">Salmon</a></li>
<li id="id5"><a href="#">Pollock</a></li>
<li id="id6"><a href="#">Trout</a></li>
</ul>
</li>
</ul>
JavaScript:
$(document).ready(function() {
$('.sortable-list').sortable({
connectWith: '.sortable-list',
dropOnEmpty: true,
update: function(event, ui) {
}
});
$(".droppable").droppable({
drop: function( event, ui ) {
var collapsedList = $(this).parent() ;
if ($(collapsedList).collapsible( "option", "collapsed" )){
$(collapsedList).collapsible( "expand" );
}
}
});
var sortupdate = function (event, ui) {
};
$('.sortable-list1').on("sortupdate", sortupdate);
$('.sortable-list1').sortable({
connectWith: '.sortable-list1',
dropOnEmpty: true
});
});
CSS:
.ui-listview>.ui-li-static, .ui-listview>.ui-li-divider, .ui-listview>li>a.ui-btn {
overflow: visible !important;
}
.sortable-list1 {
min-height:50px;
padding:10px
}
Спасибо!