Javascript 如何强制/允许用户下载多个文件?(客户端)
输入是可变数量的URL(远程),所有链接图像资源。希望允许用户允许一批下载所有这些URL。由于我们讨论的是1000-2000个图像资源,要求用户为每个URL单击“另存为…”是不可行的 我最初的尝试是将所有图像下载到blob(由于同源策略而无法工作),归档文件并允许用户下载(所有这些客户端)Javascript 如何强制/允许用户下载多个文件?(客户端),javascript,html,flash,Javascript,Html,Flash,输入是可变数量的URL(远程),所有链接图像资源。希望允许用户允许一批下载所有这些URL。由于我们讨论的是1000-2000个图像资源,要求用户为每个URL单击“另存为…”是不可行的 我最初的尝试是将所有图像下载到blob(由于同源策略而无法工作),归档文件并允许用户下载(所有这些客户端) 我想知道可能的替代方案是什么?无论解决方案是什么,都不能在任何时候将远程资源下载到服务器。我真的想不出更好的办法,只能根据用户的偏好在服务器端准备一个存档,然后让用户下载包 我想你可以让用户安装一个浏览器扩展
我想知道可能的替代方案是什么?无论解决方案是什么,都不能在任何时候将远程资源下载到服务器。我真的想不出更好的办法,只能根据用户的偏好在服务器端准备一个存档,然后让用户下载包
我想你可以让用户安装一个浏览器扩展,允许对二进制数据和本地文件系统进行更多的控制,但我怀疑这正是你想要的。虽然这不可能,但我还是用一些魔法在Chrome上做到了这一点。首先,您需要将
下载属性设置为您的所有链接。例如:
<a href="http://example.com/image1.jpg" download>download</a>
<a href="http://example.com/image2.jpg" download>download</a>
然后只需在链接中循环并调用它:
var links = document.getElementsByTagName('a');
for(var i=0;i<links.length; i++) {
makeClick(links[i]);
}
var links=document.getElementsByTagName('a');
对于(var i=0;i
var links = document.getElementsByTagName('a');
for(var i=0;i<links.length; i++) {
makeClick(links[i]);
}