相关疑难解决方法(0)

单击HTML按钮或JavaScript时如何触发文件下载

这很疯狂,但我不知道如何做到这一点,而且由于这些词有多常见,很难在搜索引擎上找到我需要的东西.我认为这应该是一个容易回答的问题.

我想要一个简单的文件下载,它会像这样做:

<a href="file.doc">Download!</a>
Run Code Online (Sandbox Code Playgroud)

但我想使用HTML按钮,例如以下任何一种:

<input type="button" value="Download!">
<button>Download!</button>
Run Code Online (Sandbox Code Playgroud)

同样,是否可以通过JavaScript触发简单下载?

$("#fileRequest").click(function(){ /* code to download? */ });
Run Code Online (Sandbox Code Playgroud)

我绝对不是在寻找一种方法来创建一个看起来像按钮的锚,使用任何后端脚本,或者混淆服务器头或mime类型.

html javascript download

389
推荐指数
11
解决办法
92万
查看次数

在不离开页面的情况下打开下载窗口的最简单方法

什么是最好的跨浏览器方式来打开下载对话框(假设我们可以设置内容处置:标题中的附件)而无需导航离开当前页面,或打开弹出窗口,这在IE6中无法正常工作.

javascript

104
推荐指数
10
解决办法
26万
查看次数

使Firefox和Chrome以特定名称下载图像

鉴于https://www.example.com/image-list:

...
<a href="/image/1337">
  <img src="//static.example.com/thumbnails/86fb269d190d2c85f6e0468ceca42a20.png"/>
</a>
<a href="//static.example.com/full/86fb269d190d2c85f6e0468ceca42a20.png"
   download="1337 - Hello world!.png">
  Download
</a>
...
Run Code Online (Sandbox Code Playgroud)

这是一个用户脚本环境,因此我无法访问服务器配置.因此:

  1. 我无法使服务器接受用户友好的文件名https://static.example.com/full/86fb269d190d2c85f6e0468ceca42a20 - 1337 - Hello World!.png.
  2. 我无法配置跨源资源共享.www.example.comstatic.example.com由CORS壁由设计分离.

当用户点击"下载"链接时,如何使Firefox和Chrome显示" 将文件另存为"对话框,其中包含建议的文件名"1337 - Hello world!.png"

经过一些失败和谷歌搜索,我学到了这些问题:

  1. Firefox完全忽略download了某些图像MIME类型上属性的存在.
  2. Firefox完全忽略download了跨站点链接上属性的存在.
  3. Chrome完全忽略download了跨网站链接上的属性值.

所有这些观点对我来说都没有任何意义,所有这些看起来都像是"让我们对这个特征进行随机的非感性限制",但我必须接受它们,因为这是我的环境.

有办法解决问题吗?


背景:我正在为使用MD5哈希作为文件名的图像板编写用户脚本.我希望用户友好的名称更容易保存.让我更接近这一点的任何事情都会有所帮助.

我想我可以通过使用blob的对象URL和带有被攻击的CORS头的本地代理来解决这些限制,但这种设置显然是不合理的.通过画布保存可以工作(在这种情况下,CORS的图像是"受保护"吗?),但它会强制进行双重有损压缩或有损无损转换,给定JPEG文件,这些都不是好的.

html javascript firefox google-chrome cors

19
推荐指数
2
解决办法
3759
查看次数

强制外部下载URL

我想在我的网页上托管一个包含mp3文件的外部网址.问题是,点击该链接会打开播放器,我必须点击右键,以下载文件"链接另存为".有没有强制文件下载的解决方案?

我不想下载该文件,然后使用标头强制下载.

html html5 header download

11
推荐指数
2
解决办法
2万
查看次数

强制<a download />下载图像而不是打开图像的URL链接

<a download='file' href="https://tinyjpg.com/images/social/website.jpg">
  Download
</a>
Run Code Online (Sandbox Code Playgroud)

有没有办法强制下载文件而不是在新窗口中打开文件?现在,如果文件是一个URL,就像下面的例子一样,它将不会被下载,并将在一个新窗口中打开.

谢谢

html5

9
推荐指数
1
解决办法
6810
查看次数

标签 统计

html ×3

javascript ×3

download ×2

html5 ×2

cors ×1

firefox ×1

google-chrome ×1

header ×1