【发布时间】:2019-10-03 03:16:10
【问题描述】:
我正在构建一个使用 HTML5 拖放的可排序列表。它工作得很好,但是当涉及到重影图像时,我遇到了一个令人沮丧的问题。鬼影总是想飞回它来的地方。结果是如果一个列表项改变了位置,鬼影就会飞回错误的列表项。
理想情况下,重影图像应该在onDragEnd 事件之后根本不显示。我尝试在 dragEnd 上将图像设置为空图像
handleDragEnd(e) {
e.dataTransfer.setDragImage(new Image(0, 0), 0, 0);
...
但我认为你只能在onDragStart中使用setDragImage。
有没有办法隐藏鬼影onDragEnd,或者至少让它飞回正确的位置?
【问题讨论】:
-
你如何交换项目?我正在实现一个类似的功能,在实现实际交换之前,幽灵图像的行为是这样的,但是在实现交换之后,图像不再飞回。我认为浏览器可以检测到初始项目是否已被移动,然后它可以按预期工作。
-
请添加一些示例代码以充分说明问题
标签: html safari drag-and-drop