@Atllantis

"Внешнее" изменение координат объекта при перемещении (Draggable)?

Есть некий объект...
При помощи Draggable (jQuery UI) перемещаю его. Т.е. нажав ЛКМ, начинаю его перемещать (рис. 1).
Не отжимая ЛКМ, поворачиваю объект (например нажатием на какую-либо клавишу на клавиатуре). Но, после поворота, курсор фактически находится за пределами объекта (рис. 2).
Нужно переместить объект под курсор (рис. 3), не прерывая процесс переноса.
61edb5118b9a4b9485f06e3a0e3c5459.png
Собственно вопрос:
Как изменить координаты объекта, не прерывая процесс draggable?

Я пробовал и offset, и position и т.д. и т.п., применять на объекте... Изменив координаты объекта, он перемещается в нужную позицию (как на рис. 3), но как только я продолжаю перемещение объекта, он сразу же возвращается на прежнее положение (рис. 2).
Задам вопрос по другому, как сообщить draggable, о том, что координаты объекта изменились, во время перемещения этого объекта, не прерывая перемещение?
  • Вопрос задан
  • 3283 просмотра
Решения вопроса 1
ghaiklor
@ghaiklor
NodeJS TechLead
Так как вы используете готовый плагин, то тут тяжелее. Я для таких случаев пишу свой Draggable-модуль.
Что по поводу вашей проблемы, то смею предположить, что jQuery запоминает offset при старте drag'а и использует ее при каждом onMove курсора мышки. Попробуйте использовать ваши наработки в onDrag.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Нужно сделать квадратную обёртку с размерами максимума ширины или высоты и вешать .draggable на неё.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы