Элементы перетаскиваются в обоих направлениях (x и y) перед удалением. После капли их следует перетаскивать только в одном направлении (ось y). Я попытался удалить класс с перетаскиванием в обоих направлениях, а затем добавить новый класс с перетаскиванием в одном направлении. Однако это не работает: после капли и после добавления нового класса элементы все равно можно перетаскивать в обоих направлениях. Большое спасибо за любую помощь.
Захватите событие drop
из контейнера с возможностью удаления. Погиб уничтожить, чтобы убить перетаскиваемого.
$("#bar").draggable("destroy");
Перевяжите его, указав, что ось должна быть только Y
$('#bar').draggable({axis: 'y'});
Объединяя все это:
$("#droppable").droppable({
drop: function (e, ui) {
var draggable = ui.draggable;
if ($(draggable).data('dropped')) {
//this happened during only the "Y" axis constraint
//do whatever
} else {
$(draggable).draggable('destroy');
$(draggable).data('dropped', true)
$(draggable).draggable({
axis: 'y'
});
}
}
});
$("#draggable").draggable();