jQuery-ui сортируемые перетаскиваемые модули, столкнувшиеся с несколькими проблемами?

#javascript #jquery #jquery-ui #jquery-ui-sortable #jquery-ui-draggable

#javascript #jquery #jquery-ui #jquery-ui-сортируемый #jquery-ui-перетаскиваемый

Вопрос:

(Подводя итог, мою проблему можно посмотреть здесь: http://jsfiddle.net/F5Wve/12 /)

Итак, я пытаюсь исправить код, который я запускаю на веб-сайте, над которым я работаю с моим другом по имени FriendGrid, мы используем jQuery-UI для добавления сортируемых модулей в интерфейс с тремя столбцами, к сожалению, я сталкиваюсь с некоторыми странными ошибками в своем коде, когда я использую этот jQuery дляинициировать перетаскиваемый интерфейс для модулей, расположенных внутри столбцов, которые связаны с connectWith, возникает проблема, заключающаяся в том, что модули клонируют себя после перемещения, когда их нужно только перемещать:

 $(".module").draggable({
    handle: $(this).children(".draghandle"),
    opacity: 0.5,
    helper: 'clone',
    revert: 'invalid',
    connectToSortable: '.column'
});
 

И затем, когда я использую этот следующий код для его запуска вместо клонирования модулей, сначала кажется, что он собирается переместить его, но затем он полностью удаляет его:

 $(".module").draggable({
    handle: $(this).children(".draghandle"),
    opacity: 0.5,
    helper: 'original',
    revert: 'invalid',
    connectToSortable: '.column'
});
 

Таким образом, в любом случае он пренебрегает простым перемещением, поскольку можно заметить, что параметр, который я меняю, — это помощник, который также является основным фактором во всем этом, но если помощник является клоном, он должен просто использовать клон самого себя для перетаскивания, и если он установлен на оригинал, онследует полностью убрать модуль с места, в котором он находился, и перетащить сам модуль, но я не понимаю, почему это может вызвать эти странные проблемы, текущая настройка на сайте — clone, но вам, конечно, придется создать учетную запись, чтобы иметь возможность ее протестировать, что, есливы хотите, чтобы вы могли сразу удалять послесловия, и как только вы окажетесь на сайте, вам нужно вызвать функцию javascript ModularMode () , что, если вы не знаете, как это можно легко сделать, введя «javascript: ModularMode ();» в вашем браузере (без кавычек). Я надеюсь, что смогу получить несколько полезных ответов, спасибо.

Комментарии:

1. Ваш вопрос, вероятно, привлек бы больше внимания, если бы вы могли свести свои проблемы к примеру, который вы могли бы опубликовать jsfiddle.net

Ответ №1:

Как бы то ни было, вы дублируете усилия, объявляя свои элементы как перетаскиваемыми, так и сортируемыми. Сортируемые файлы имеют одинаковые параметры, поэтому вы также можете указать их там. Причина, по которой у вас так много проблем со сценарием, вероятно, заключается в том, что ячейки таблицы имеют тенденцию создавать проблемы с атрибутами позиционирования CSS, которые библиотека использует для создания желаемого поведения. Я даже не могу начать размышлять о клонировании. Тем не менее, мне удалось выполнить то, что вы пытаетесь сделать, используя немного другую разметку (неупорядоченные списки) и позиционирование элементов. Вы могли бы так же легко использовать divs, обертывающие другие divs, но оставить все ваши контейнеры столбцов, и все должно получиться просто отлично. Посмотрите пример скрипки.

Как и во многих сортируемых файлах, перетаскиваемый элемент не всегда легко привязывается к нижней части списка, но это выполнимо. Вы захотите указать атрибуты width и min-height для своих столбцов, чтобы они не исчезали при перетаскивании из них всех элементов.

Комментарии:

1. Спасибо, оказалось, что двойное объявление вызвало дублирование XD, и включение всего этого в одно объявление решило большинство моих проблем 🙂