jQuery, перемещаемый + сбрасываемый: как хватать отброшенный элемент к отброшенному - на элементе

Это зависит высоко от того, что Вы делаете и какой язык Вы выполняете в нем. Лично, я склонен не использовать IDE (или "мой IDE состоит из 3 xterms рабочая энергия, одно выполнение клиента базы данных, и один с подсказкой удара или концом журналов", в зависимости от того, как широко Вы определяете "IDE") для большей части моей работы, но, если бы я должен был разработать собственный платформой GUI, тогда я достиг бы соответствующего языку IDE немедленно - IMO, IDE и графическое редактирование формы ясно сделаны друг для друга.

29
задан 10goto10 10 August 2009 в 14:41
поделиться

4 ответа

У меня была аналогичная проблема - я решил ее решить, вручную удалив перетаскиваемый элемент из его старого родительского элемента и добавив это к упавшему элементу.

16
ответ дан 28 November 2019 в 00:39
поделиться

Я обнаружил, что когда вы выполняете перетаскивание, пользовательский интерфейс jQuery добавляет строку, чтобы сообщить вам, где вы его уронили. Ниже приведен пример кода, который я использовал, чтобы закрепить его на месте

$('.droppable').droppable({ drop: function(ev, ui) { 
    //Get Details of dragged and dropped
    var draggedclass = ui.draggable.attr('class'),
        droppedclass = 'class' + $(this).attr('name').toLowerCase();

    //update the classes so that it looks od.       
    ui.draggable.removeClass(draggedclass).addClass(droppedclass);  
    ui.draggable.removeAttr('style');
});
3
ответ дан 28 November 2019 в 00:39
поделиться

Если div слева фактически находятся в li справа ( что вы можете подтвердить с помощью Firebug), и если все li находятся в ul (как и должно быть), попробуйте одно или оба из следующих вариантов:

ul#right_div {
  text-align: center;
}

ul#right_div li {
  text-align: center;
}
0
ответ дан 28 November 2019 в 00:39
поделиться

Спасибо за ваш пост - он помог мне в правильном направлении. Я нахожу, что немного чище установить свойства позиции перетаскиваемого объекта вместо того, чтобы возиться с HTML-кодом. Это устанавливает позицию в левый верхний угол объекта droppable, но вы можете изменить ее так, чтобы она была центрирована.

drop: function(event, ui) {
   $(ui.draggable).css('top', $(this).position().top);
   $(ui.draggable).css('left', $(this).position().left);
}
10
ответ дан 28 November 2019 в 00:39
поделиться
Другие вопросы по тегам:

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