【发布时间】:2020-05-05 03:39:06
【问题描述】:
我正在使用 Angular 8+ 并使用 HTML 拖放功能。简而言之,当我拖动一个可拖动的 div 时,我希望鼠标光标始终位于被拖动的浮动 div 的左上角,无论我在 div 中拖动到哪里。下面是我希望光标所在位置的屏幕截图。
这可以在 Angular/Javascript 中实现吗?我在下面有 stackblitz 链接: https://stackblitz.com/edit/angular-envxg7?file=src/app/app.component.html
在此先感谢
<div draggable="true" style="width:300px;height:50px;background-color:red">
Drag Item
</div>
【问题讨论】:
-
嗨!这在角度上是可能的,但它有点混乱(意见....),长话短说:在普通的 JS/Jquery 中,您可以使用 this 之类的东西来实现这一点,基本上是您克隆一个节点并使其看起来像一个常规的可拖动元素,但您可以根据自己的喜好定位它。在 Angular 中,您基本上使用组件而不是动态 HTML,因此您需要借助 ComponentFactories 动态注入节点(组件)来实现这一点。
-
除非有更花哨的 hacky 方式来使用plainJS,否则它也可能在 Angular 中“轻松”完成
-
感谢您的 tils。老实说,我并不完全了解克隆节点解决方案的工作原理,希望我能找到一些信息来解决这个问题
标签: javascript html css angular drag-and-drop