给页面的图片加下载按钮
<img src="" /img>
<button onclick="handleDownloadClick">下载图片</button>
function handleDownloadClick() {
var eleLink = document.createElement('a');
eleLink.download = 你的文件名 + '.jpg';
eleLink.style.display = 'none';
var canvas = document.createElement('canvas');
var context = canvas.getContext('2d');
var width = domI mg.naturalWidth;
var height = domImg.naturalHeight;
canvas.width = width;
canvas.height = height;
context.drawImage(domImg, 0, 0);
eleLink.href = canvas.toDataURL('image/jpeg');
document.body.appendChild(eleLink);
eleLink.click();
document.body.removeChild(eleLink);
}
但是,当 img 图片的 url 跨域的时候,会在新窗口打开,chrome 并不执行下载,
需要给 img 标签加一个属性:crossOrigin
<img crossOrigin="anonymous" src="" />
作者:码路工人
公众号:码路工人有力量(Code-Power)
欢迎关注个人微信公众号 Coder-Power
一起学习提高吧~

posted on 2021-07-12 09:08 CoderMonkey 阅读(236) 评论(0) 编辑 收藏 举报
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步