如何在用户点击锚时强制浏览器显示“另存为”对话框而不是播放音频文件?我需要为我正在开发的Chrome扩展程序。显示“另存为”对话框而不是使用JavaScript播放音频文件
2
A
回答
3
某些浏览器支持HTML5中,你可以使用download
属性的<a>
的:
<a href="URL" download="new_filename.extension">Download</a>
兼容性:http://caniuse.com/download
参考:https://developer.mozilla.org/en-US/docs/HTML/Element/a#attr-download
否则,您必须将其设置在服务器上。
5
传送音频文件的服务器需要提供正确的Content-Disposition
HTTP标头才能在所有浏览器上可靠地触发显示“另存为”对话框。如果您使用PHP,你会做这样的:
header("Content-Disposition: attachment; filename=$filename");
有没有办法用JavaScript来独自做到这一点,因为这涉及到服务器和浏览器之间的相互作用。
+0
谢谢,但它只是一个链接到第三方资源,所以我没有访问服务器脚本。 – 2013-04-23 17:54:10
它比我一直在寻找的更好,因为它允许我指定文件名。比你。 – 2013-04-23 18:01:04
@Glum没问题。只要确保你阅读了我提供的两个链接(并对其进行更多的研究)。它没有在许多浏览器/版本中实现,并且您应该知道一些怪癖 – Ian 2013-04-23 18:02:23
这并不重要,因为我创建的Chrome扩展程序和Chrome自14版以来支持此功能。 – 2013-04-23 18:42:29