我已成功使用HTML 5为Web应用程序实现拖放文件上传。我会监听drop事件,然后从event.dataTransfer属性中获取文件数据。
对于所有意图和目的,它的工作原理与dropzone.js完全相同:
但出于某些原因,我无法从Chrome下载栏中拖放文件。
dragenter,dragover和dragleave事件触发,但没有掉落事件触发。这可以使用dropzone.js演示网站可靠地重现。
为什么?
答案 0 :(得分:9)
诀窍是,默认情况下,传递给dropEffect
的{{1}}的{{1}}属性默认设置为event.dataTransfer
。您需要检测到这一点,并将其设置为复制或移动,具体取决于用例。
对我来说,将其设置为复制工作。我没有对dragover
事件做任何事情。只是对'none'
事件的修改。
这就是我的所作所为:
drop