У меня есть настройка страницы, основная цель которой — позволить пользователям перетаскивать и изменять порядок набора зеленых блоков из одной скользящей области в другую (попробуйте, перетащив блок справа от контейнера).
Проблема в том, что когда я перетаскиваю их из области в область, удаление и общая сортируемость ненадежны, поскольку иногда область, в которую вы можете переместить поле, исчезает или поля выравниваются неправильно (показано на изображении ниже)
Перед перетаскиванием
При перетаскивании
Как вы можете видеть, когда верхний левый блок перетаскивается, нижний "перепрыгивает" на другую сторону. Я думаю, это может быть вызвано наличием параметра заполнителя в JS, как если бы я его удалил, этого больше не происходит:/
Также (и что более тревожно) при перетаскивании блока, например, из правая область слева, иногда заполнитель даже не показывает!!
Заполнитель не отображается
Мне также пришлось использовать $( "#areaOne, #areaTwo" ).sortable( "refresh" );
в коде, чтобы подключенный контейнер даже заметил, что в него перетаскивается блок! Может быть, он не «освежает» правильно ..?
Есть ли у кого-нибудь идеи, как исправить эти ненадежные/нестабильные проблемы с сортировкой?
Текущий код можно найти здесь > http://jsfiddle.net/WqZ9m/ 19/а>
ОБНОВИТЬ:
Удаление границы из класса-заполнителя решило проблему «прыжков», но заполнитель по-прежнему иногда исчезает, когда блок перетаскивается между областями. Проблема возникает, когда прокрутка не происходит (т. Е. Когда вы удаляете код прокрутки и перетаскиваете прямо из одной области в другую), поэтому я предполагаю, что проблема заключается в основном операторе «если».
Глядя на живой HTML, я также заметил, что когда удержание места исчезает, оно фактически возвращается к области, из которой оно было первоначально перетащено!
Обновленный код > http://jsfiddle.net/WqZ9m/20/
Вот запись экрана с текущей проблемой > http://www.youtube.com/watch?v=V-mxOQ2ke28
Вы увидите, что заполнитель (желтая область) исчезает:/
Любые ответы очень ценятся, спасибо