У меня есть код перетаскивания, который работает нормально, как есть. Просто есть маленький запрос. Я заметил, что если я добавляю оповещение в функцию удаления для целей отладки (например, alert (draggedItem.text ());), оно запускает оповещение дважды, когда я помещаю что-либо в область перетаскивания. В другом посте я читал, что использование droppable & sortable вместе приводит к возникновению этого странного двойного события. Но мне нужно использовать событие droppable, чтобы получить перетаскиваемый объект item (ui.draggable) - так я могу манипулировать им, когда я его сбрасываю. Если есть какой-нибудь другой способ получить перетаскиваемый объект, пожалуйста, скажите мне :) Также, если у вас есть объяснение, почему это происходит, это было бы интересно ...
$(".field > li").draggable({
helper:'clone',
opacity: 0.4,
connectToSortable:'.dragrow'
});
$(".dragrow").droppable({
drop: function(e, ui) {
draggedItem = ui.draggable;
//alert(draggedItem.text());
}
}).sortable({ //code here to do stuff with 'draggedItem'
У меня также есть другой запрос, связанный с этим, но так как мой код довольно большой, я не могу опубликовать полную информацию здесь. Так что я понимаю, если вы не можете помочь - просто если что-то приходит на ум, это было бы действительно здорово. По сути, у меня есть список «блоков», которые я могу перетащить в несколько строк. Отдельные строки могут быть скрыты с помощью события переключения. Если у меня есть 3 ряда, я могу перетащить блоки в любой из них. Если я затем скрою первый, то теперь я не могу перетащить в другие два ряда. Я все еще могу сортировать их, хотя. И как только я начну сортировать их, я снова смогу перетаскивать их. Weird ...