背景:一般使用a标签,但浏览器有时候不会下载,会打开新的标签页,很不友好
下面这段代码可以实现浏览器下载图片
1 function downPic(src,imgName) { 2 var canvas = document.createElement('canvas'); 3 var img = document.createElement('img'); 4 img.onload = function(e) { 5 canvas.width = img.width; 6 canvas.height = img.height; 7 var context = canvas.getContext('2d'); 8 context.drawImage(img, 0, 0, img.width, img.height); 9 canvas.getContext('2d').drawImage(img, 0, 0, img.width, img.height); 10 canvas.toBlob((blob) => { 11 var link = document.createElement('a'); 12 link.href = window.URL.createObjectURL(blob); 13 link.download = imgName; 14 link.click(); 15 }, 16 "image/jpeg"); 17 }; 18 img.crossOrigin = "Anonymous"; 19 img.src = src; 20 }
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步