javascript - 如何在链接单击而不是打开时下载图像
问题描述
我正在运行一个烧瓶应用程序,并使用一个名为“Autoindex”的插件来列出目录中的所有文件, 就像这样 现在,当我单击图像名称时,它会打开图像。但我想在不离开按钮点击页面的情况下下载图像。
我无法修改此HTML
代码。所以我在想,我可以使用 Javascript 来执行这个任务吗?
编辑
这是 HTML 代码:
<td class="name">
<a href="/templete/images/2.jpg">2.jpg</a></td>
<td class="modified">
<time datetime="2019-07-15 15:42:20.989829">2019-07-15 15:42:20.989829</time>
</td>
<td class="size">
现在,我无法直接修改 HTML 代码。链接没有类,我该如何更改
<a href="/templete/images/2.jpg">2.jpg</a>
为此,对于页面中的所有图像链接。
<a href="" download="/templete/images/2.jpg">2.jpg</a>
解决方案
您可以使用 JS 将下载属性添加到 HTML 元素:
element.setAttribute('download','')
或者更简单:
element.download=''
因此,您可以轻松地为每个带有href
结尾的链接添加它.jpg
:
const links=document.querySelectorAll('a[href$=".jpg"]')
links.forEach(link=>link.download='')
推荐阅读
- mysql - MariaDb 复制
- antlr4 - Antlr4 c++ 目标看起来像 java
- scilab - 在 xcos/scicos 中包含一个 Scilab 函数/脚本作为块
- matlab - 嵌套for循环不输出内部循环的值
- microsoft-cognitive - 教程语音意图识别不起作用?
- angular - 同时在 chrome 和 IE11 中支持 Angular Element 的问题
- java - Spark:使用分隔符进行拆分不适用于逗号
- java - 无法使用 java 在 Linux 中解压缩 Web 服务响应
- angular - console.log 不显示使用 PUT 方法编辑的输入
- java - 微调器中的 setError 消息时出错。如何seterror spinner?