@balex777

Как сделать draggable и droppable jquery для перетаскивание div блоков в другие ячейки td таблицы?

Привет, пытаюсь настроить перетаскивание div блока в любую ячейку td таблицы

Есть таблица с множеством ячеек td, в некоторых из них есть блоки div, в результате надо чтобы эти div можно было переносить в пустые ячейки td

вот мой код, но почему то не работает droppable не принимает в себя div и после убирания курсора с перетаскиваемого элемента он возвращается на место

$(function() {
	
        $(".div_in_td").draggable();

        $(".td_block").droppable({
                hoverClass: "hover_droppable", 
        });
	
    });


Я пробовал в td_block ставить пустые div чтобы в них можно было принимать draggable, думал что это из за td но все равно все так же.
Кто знает в чем проблема?
  • Вопрос задан
  • 286 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
HTML
<table>
  <tr>
    <td><div class="draggable">0</div></td>
    <td></td>
    <td></td>
  </tr>
  <tr>
    <td></td>
    <td><div class="draggable">1</div></td>
    <td><div class="draggable">2</div></td>
  </tr>
  <tr>
    <td></td>
    <td><div class="draggable">3</div></td>
    <td></td>
  </tr>
</table>

CSS
td {
  border: 1px solid silver;
  width: 100px;
  height: 100px;
}

.draggable {
  display: inline-block;
  width: 25px;
  height: 25px;
  background: red;
  cursor: pointer;
  margin: 5px;
  color: white;
}

JS
$('.draggable').draggable({
  containment: 'table',
  stop(e, ui) {
    $(this).css({
      left: '',
      top: '',
    });
  },
});

$('td').droppable({
  accept: '.draggable',
  drop(e, ui) {
    ui.draggable.appendTo(this);
  },
});

https://jsfiddle.net/eq956pyb/1/
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы