Как сделать перетаскиваемую привязку к сбросу, разрешить обмен?

Я не уверен, как спросить это, но я ищу, чтобы создать интерфейс, где три элемента существуют слева (A, B, C) и могут быть перетащены на три элемента справа (1, 2, 3).

Я хотел бы, чтобы левый элемент при выпадении привязывался к правому элементу, но затем был бы взаимозаменяемым с двумя другими элементами.

Я могу заставить A, B и C привязываться к правой стороне, но не могу заставить их поменяться местами. Если я установлю ui.draggable.position на капле, то я не могу понять, как переставить их справа. Я попытался клонировать и удалить их безрезультатно, в итоге я получил ошибку.

У меня есть это до сих пор: http://jsfiddle.net/7xFsr/13/

Заранее спасибо!

1 ответ

Решение

Я знаю, что у меня есть конкретная проблема, но вот мое решение. Наконец выяснили, как манипулировать пользовательским интерфейсом jQuery position() особенность.

Я создал массив, который содержал идентификаторы каждого начального узла, а также их обертки (чтобы изменить положение).

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

Вроде запутанно, но я решил, используя тот же jsfiddle: http://jsfiddle.net/7xFsr/35/

Надеюсь, это поможет кому-то!

Другие вопросы по тегам