你如何在JavaScript中自动下载文件?

时间:2016-04-28 01:12:05

标签: javascript html image download href

所以,当有人访问我的网站时,我一直在寻找并尝试自动下载文件的方法。我尝试过使用标签进行下载,它可以正常工作,您只需点击即可下载。像这样......



<a href="pic.jpg" download>Download</a>
&#13;
&#13;
&#13;

但我不想要那个。我想让它自动下载,无需点击。我需要一些帮助!

3 个答案:

答案 0 :(得分:4)

如果它是一个实际文件(不会像JPG文件那样只在浏览器中显示),那么你可以使用javascript或元重定向。

<script> document.location.href = 'yourfile.exe'; </script>

<meta http-equiv="refresh" content="0; url=yourfile.exe">

但我想知道你是否在谈论用户被问到是否要打开或保存文件(无论是JPG还是其他什么?)

答案 1 :(得分:1)

另一种方法:

var a = document.createElement('a');
a.setAttribute('href', dataUri);
a.setAttribute('download', filename);

var aj = $(a);
aj.appendTo('body');
aj[0].click();
aj.remove();

答案 2 :(得分:1)

另一个纯 javascript 选项是:

const downloadFile = (file) => {
  const element = document.createElement('a');
  element.setAttribute('href', 'Download Btn');
  element.setAttribute('download', file);

  element.style.display = 'none';

  document.body.appendChild(element);

  element.click();
  document.body.removeChild(element);
}

然后你可以在加载时调用函数:

downloadFile(/*pass your file here*/);