#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, и включение всего этого в одно объявление решило большинство моих проблем 🙂