Jquery перетаскиваемая позиция - клон - PullRequest
1 голос
/ 10 мая 2011

У меня есть jquery draggable / droppable, работающий с установленными параметрами сдерживания и помощника. Я хотел бы сохранить верхний и левый параметры отброшенного элемента в двух переменных.

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

http://www.instructuk.com/drop.php

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

Ответы [ 2 ]

8 голосов
/ 10 мая 2011

Вы должны будете сделать расчет самостоятельно:

var
  draggableDocumentOffset = ui.helper.offset(),
  droppableDocumentOffset = $(this).offset(),
  left = draggableDocumentOffset.left - droppableDocumentOffset.left,
  top = draggableDocumentOffset.top - droppableDocumentOffset.top;

alert('Item was dropped at - Left: ' + left + ', Top: ' + top); 
0 голосов
/ 10 мая 2011

Возможно, это не самое красивое решение, но вы можете определить положение капли в документе:

x=event.pageX;
y=event.pageY;

А затем используйте координаты области сброса, чтобы вычесть из x и y.

dx=$("#droparea").offset().left;    
dy=$("#droparea").offset().top;    
var left=x-dx;          
var top=y-dy;   

K

...