我很难理解 HTML 5 中的拖放,尤其是 dropeffect 和 effectsallowed 属性。我已经查看了文档和示例,但我仍然没有很好地掌握。特别是,您可以在页面内拖动数据而另一方面从页面外部拖动文件这一事实对我来说很模糊。
首先,当我将页面内的图像拖到放置区域时,DataTransfer 对象的 FileList 为空。但这是否意味着您也不能像访问页面外部文件一样访问页面中的图像?(例如获取它们的属性或将它们提供给 FileReader)
我不明白的另一件事是 dropEffect 和 effectsAllowed。它们是与 setData 和 getData 方法结合使用,还是与从页面外部拖动的文件结合使用?
我认为如果我设置event.dataTransfer.dropEffect = 'move',那么页面外的文件实际上会被移动并消失在旧位置。但是,当我将某些内容拖到页面中时,除了 dropEffect 字符串值之外,我看不到移动/链接/复制之间的任何实际区别。