单击链接后强制浏览器保存文件

Jac*_*ley 52 html javascript jquery

可能重复:
是否可以仅使用JavaScript(客户端方法)在浏览器中为已识别的MIME类型启动下载提示?

有没有办法强制使用JavaScript例程的浏览器在单击链接后将文件保存为("另存为")?我需要默认情况下直接下载图像,而不是由浏览器呈现.

Aus*_*tin 198

您可以使用HTML5下载属性,如下所示:

<a href="path/to/file" download>Click here to download</a>
Run Code Online (Sandbox Code Playgroud)

这将打开一个"另存为"对话框,无论文件类型如何,都不会让您离开页面.

  • 在大多数情况下,不是万无一失但简单有效:)请参阅此处获取当前浏览器支持:http://caniuse.com/#feat=download (8认同)
  • 我目前的理解是,此属性仅在Google Chrome中得到认可和尊重. (7认同)
  • @JacksonHenley它基本上忽略了下载属性链接到资源.看看这个小提琴:http://jsfiddle.net/GTCfy/我也验证了它.*它不适用于最新版本的Internet Explorer,Mozilla Firefox或Safari.*所有其他版本均未经测试.*它适用于Google Chrome*. (4认同)
  • 对于那些不支持它的浏览器,它是否会优雅地降级? (3认同)
  • 尝试$("a")[0] .click()访问DOMs点击,而不是jQuery,它的工作原理 (2认同)
  • 这些天,这也适用于Firefox和Opera.有关确切的报道,请访问http://caniuse.com/download. (2认同)
  • 这对我不起作用.(Safari 4.0.6) (2认同)
  • 它在最新版本的Internet Explorer,Mozilla Firefox或Safari中不起作用.所有其他人都未经过测试.它适用于Google Chrome日期:2017年5月13日 (2认同)

M S*_*lle 14

如果您控制服务器,那么您应该将其设置为发送您希望下载的文件的Content-Disposition:attachment标头(例如,您可以在.htaccess文件中执行此操作以在特定目录中创建所有.jpegs) .