vue前端实现前端下载,并实现点击按钮弹出本地窗口,选择自定义保存路径
一、实现下载
二、实现自定义保存路径
直接上代码,废话不多说,点关注,不迷路
一、下载代码
<!DOCTYPE html><html> <head> <meta charset="utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <title></title> <meta name="description" content="" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <link rel="stylesheet" href="" /> </head> <body> <a onclick="fn1()" style="cursor: pointer">aaaaaaa</a> <script> var arr = [ "https://img0.baidu.com/it/u=4162443464,2854908495&fm=253&fmt=auto&app=138&f=JPEG?w=800&h=500", ]; function downloadIamge(imgsrc, name) { let image = new Image(); image.setAttribute("crossOrigin", "anonymous"); image.onload = function () { let canvas = document.createElement("canvas"); canvas.width = image.width; canvas.height = image.height; let context = canvas.getContext("2d"); context.drawImage(image, 0, 0, image.width, image.height); let url = canvas.toDataURL("image/png"); let a = document.createElement("a"); let event = new MouseEvent("click"); a.download = name || "photo"; a.href = url; a.dispatchEvent(event); }; image.src = imgsrc; } function WriteToFile(sText) { with (document) { ir = createElement("iframe"); ir.id = "ifr"; ir.location = "about:blank"; ir.style.display = "none"; body.appendChild(ir); with (getElementById("ifr").contentWindow.document) { open(); write(sText); close(); if (document.compatMode && document.all) { execCommand("SaveAs", false, ".txt"); } else { location = "data:application/rtf," + encodeURIComponent(sText); } } setTimeout(function () { body.removeChild(ir); }, 1000); } } function fn1() { for (let i = 0; i < arr.length; i++) { downloadIamge(arr[i]); } } </script> </body></html>
二、别找代码了,不用代码就可以实现
以下按照步骤一步一步来
按照红色箭头所指,用鼠标戳它
恭喜你,功能完成了