将文件拖出浏览器

Drag a file out of the browser

大多数关于 javascript 拖放的教程都解释了如何处理文件拖放到浏览器中以及如何将数据拖出浏览器。但是我几乎没有看到将 文件 从浏览器中拖出。

例如,您在 div 元素上开始拖动,将其拖放到桌面上,那里会出现一个文件。

我发现的是:(来自this example

e.dataTransfer.setData('DownloadURL', `image/png:Luigi.png:${e.target.href}`);

但是,据我所知,使用 DownloadURL 进行设置会导致 chrome 中出现错误,在 edge 中出现崩溃报告,而在 firefox 中不会执行任何操作。

是否有通过拖放下载文件的标准方法,最好是从 url?

好的,示例中的问题似乎是 Chrome 现在需要 DownloadURL 上的同源。

至少 Firefox 开发人员认为 11 年来复制此功能存在问题:https://bugzilla.mozilla.org/show_bug.cgi?id=570164

Safari 好像也不支持