js——原生js借助Cavas自动下载保存图片

 1 function downFile (imgsrc, name) { //下载图片地址和图片名
 2     let image = new Image();
 3     // 解决跨域 Canvas 污染问题
 4     image.setAttribute("crossOrigin", "anonymous");
 5     image.onload = function() {
 6         let canvas = document.createElement("canvas");
 7         canvas.width = image.width;
 8         canvas.height = image.height;
 9         let context = canvas.getContext("2d");
10         context.drawImage(image, 0, 0, image.width, image.height);
11         let url = canvas.toDataURL("image/png"); //得到图片的base64编码数据
12         let a = document.createElement("a"); // 生成一个a元素
13         let event = new MouseEvent("click"); // 创建一个单击事件
14         a.download = name || "photo"; // 设置图片名称
15         a.href = url; // 将生成的URL设置为a.href属性
16         a.dispatchEvent(event); // 触发a的单击事件
17     };
18     image.src = imgsrc;
19 }
20 
21 downFile(图片地址,下载成功保存到本地的图片名称);
 
原文地址:https://www.cnblogs.com/UnfetteredMan/p/14920046.html