Может кто-нибудь мне помочь, я пытаюсь реализовать перетаскивание, мне нужно обновить элемент x и y после перетаскивания, которое я могу, но после повторного перетаскивания права это теряет положение мыши, см. код ниже
event.source.dropContainer = event.source.boundaryElementSelector;
const element = event.source.getRootElement();
const boundingClientRect = element.getBoundingClientRect();
console.log(boundingClientRect, 'element');
const parentPosition = this.getPosition(element);
console.log('x: ' + (boundingClientRect.x - parentPosition.left), 'y: ' + (boundingClientRect.y - parentPosition.top));
this.dragAndDrop.emit(
{
x: (boundingClientRect.x - parentPosition.left),
y: (boundingClientRect.y - parentPosition.top),
class: className,
index: i,
});
element.style.removeProperty('transform');
element.style.setProperty('transform', 'translate3d(0px, 0px, 0px)', 'important');
}
getPosition(el) {
let x = 0;
let y = 0;
while (el && !isNaN(el.offsetLeft) && !isNaN(el.offsetTop)) {
x += el.offsetLeft - el.scrollLeft;
y += el.offsetTop - el.scrollTop;
el = el.offsetParent;
}
return { top: y, left: x };
}