Перетащите объекты на DIV .. относительно абсолютного положения и размера целевого DIV - PullRequest
2 голосов
/ 22 апреля 2010

У меня есть вопрос о перетаскивании и надеюсь, что один из вас уже решил это. У меня есть веб-приложение, в котором я могу перетаскивать аннотации (стрелки, звезды) поверх изображения, расположенного на DIV.

Вот кое-что знать. 1) изображение может быть любого размера (иногда большого, иногда маленького) 2) DIV оболочки может быть выровнен или центрирован 3) DIV обертки может быть фиксированным или автоматическим

Так есть ли какое-нибудь возможное решение сделать так, чтобы положения аннотаций всегда были относительно верхнего левого угла изображения? Итак

Я использую jQuery. Как бы я получить положение аннотации всегда относительно верхнего левого угла изображения, как только я уронил объект?

Спасибо!

1 Ответ

6 голосов
/ 22 апреля 2010

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

$('#droppable').droppable({
   drop: function(event, ui) {
      var thisOffset = $(this).offset()
      var x = ui.offset.left - thisOffset.left;
      var y = ui.offset.top - thisOffset.top;
      alert(x+','+y);
   }
});
...