Я использую следующий angular плагин перетаскивания: https://github.com/reppners/ngx-drag-drop
Здесь мы можем фактически установить положение перетаскиваемого элемента относительно курсора, используя функцию dndDragImageOffsetFunction имущество. Для всех, кто интересуется ниже, приведен простой пример, который устанавливает курсор в верхнем левом углу перетаскиваемого элемента независимо от положения, из которого перетаскивается элемент.
HTML
<div style="width:300px;height:50px;background-color:red"
[dndDraggable]="1"
[dndDragImageOffsetFunction]="dragImageOffsetRight"
dndDragImageRef
>
Drag Item
</div>
Компонент
dragImageOffsetRight:DndDragImageOffsetFunction = ( event:DragEvent, dragImage:Element ) => {
return {
x: 0,
y: 0
};
};
Примечание: событие DragEvent предоставит несколько свойств, таких как элемент offsetx y et c. Таким образом, вы можете разместить почти перетаскиваемый элемент относительно курсора почти в любом месте