Я недавно добавил на свой веб-сайт функцию списка воспроизведения, с помощью которой пользователь может перетаскивать доступные дорожки в список воспроизведения.
С помощью jQuery UI 1.8 все работало нормально, пока я не заметил странное поведение: сортируемая единственная сторона клонирует объекты при сортировке.Позвольте мне объяснить основную структуру, а затем я свяжу скрипку.
- Есть два родительских элемента:
#available-tracks-wrapper
и #playlist-wrapper
. - Пользователь может перетащить с
#available-tracks-wrapper
слева и перейдите в #playlist-wrapper
справа. - Пользователь может затем сортировать дорожки по своему желанию внутри
#playlist-wrapper
.
Проблема:
- При запуске сортировки поведение сортировки становится очевидным, однако при отбрасывании объект клонируется, а не просто перемещается.
Вот моя скрипка ,Я прошу прощения за отсутствующие изображения и т. Д.Но элементы, необходимые для воспроизведения поведения, все еще присутствуют.
Я просмотрел документы в поисках опции или метода, которые не позволяют этому поведению безрезультатно.Однако я заметил это:
Позволяет сортировать группу элементов DOM.Нажмите и перетащите элемент на новое место в списке, и другие элементы подгонятся под него. По умолчанию сортируемые элементы имеют перетаскиваемые свойства .
Так что я отключил helper:'clone'
в #available-tracks-wrapper
, который действительно удалял поведение клонирования, но приводил к ухудшению поведения в другихобластей.
Далее я подумал просто создать функцию при запуске или остановке для удаления предыдущего элемента, но динамическое нацеливание оказалось бы проблемой, так как this
или event.target
всегда является родителем #playlist-wrapper
а не сами элементы.
Спасибо всем, что взглянули на это.Я полагаю, что это просто то, что я упускаю из виду из-за своей няньки.