【发布时间】:2019-12-19 09:22:22
【问题描述】:
如何使用html拖放api和纯js实现这个效果https://stackblitz.com/angular/pldxjeolvdy?file=app%2Fcdk-drag-drop-overview-example.ts
一句话,让一个元素实时移动(不是默认的阴影效果)。
我试图在拖动事件中使用与 ondrop 事件相同的 drop() 方法,但失败了。所以我在网上搜索,似乎我们无法在dragover事件中获取e.dataTransfer.getData('text')。
HTML5 Drag and Drop anywhere on the screen 使用这个答案我可以移动 div 但它不像我附加的示例那样实时
【问题讨论】:
-
您可以使用 javascript
mouseDown()和mouseUp()函数。当鼠标按下时,将 css 添加到 divposition: absolute;并跟随鼠标指针。您还应该为这样的插件编写代码并尝试一下。当你失败时,你可以写下示例代码并寻求帮助。因为我们帮助您,但我们不为您编写代码。 -
@ariferol01 嗨,谢谢,您的方法非常合理。我所需要的只是一个想法或一种方法来修复上面的“HTML5 拖放屏幕上的任意位置”示例。那么,在您看来,拖放api不能达到同样的效果吗?如果是这样,我会使用 mouseDown
-
我不能不尝试就说清楚,但我看到 jQuery Ui 上有一个
draggable()函数。如果你愿意,我可以为 jQuery Ui 写一个答案draggable() -
@ariferol01 嘿,我刚刚阅读了 2 个拖动库,看来它们都在使用 mousedown 和 mousemove 来执行此操作。谢谢。如果你能回答你在评论中所说的话,我会接受。
标签: javascript html