Я использую desandro draggabilly, и у меня возникла проблема при вставке нового элемента. Кажется, что событие не стреляет в новый элемент, который был добавлен.Draggabilly не добавление события к вновь добавленному элементу
Адрес jsfiddle.
Вот и код.
HTML
<div class="box draggable">1</div>
CSS
.box {
width: 200px;
height: 200px;
border: 1px solid red;
display: block;
}
Jquery
$(document).ready(function() {
$.bridget('draggabilly', Draggabilly);
var $draggable = $('.draggable').draggabilly({
axis: 'x'
});
$draggable.on('dragEnd', function(e, p) {
$(this).parent().prepend('<div class="box draggable">2</div>');
$(this).prev().addClass('draggable')
$(this).remove();
});
});
На приведенном ниже коде, когда я потащил Div 1, на dragEnd
будет вставлять div 2, который имеет класс draggable
, а затем удалить div 1. Проблема здесь в том, что div 2 не перетаскивается, хотя он имеет класс draggable
.
Спасибо! Он работает, но не будет ли проблем с этим подходом? Кроме того, он просто останавливается там. Что делать, если я хочу добавить еще 5 ящиков. Как и для каждого салфетки, он добавит еще одну коробку. Как прокрутка карты. – basagabi
@ user1781041 Обновленный ответ .. Попробуйте демонстрационную версию и сообщите мне, если это то, что вы ищете? –
Это отлично работает! Как и ожидалось! Спасибо!! – basagabi