解决谷歌浏览器下载url图片会自动打开的问题
话不多说直接上代码
// 点击按钮触发的函数 downGoodsImg()
downGoodsImg (imgsrc) { // imgsrc要下载的图片地址
let that = this;
let image = new Image();
image.src = imgsrc + '?v=' + Math.random(); // 处理缓存
image.crossOrigin = '*';// 支持跨域图片
image.onload = function () {
let base64 = that.drawBase64Image(image);
this.downFile(base64);
};
},
drawBase64Image (img) {
let canvas = document.createElement('canvas');
canvas.width = img.width;
canvas.height = img.height;
let ctx = canvas.getContext('2d');
ctx.drawImage(img, 0, 0, img.width, img.height);
let dataURL = canvas.toDataURL('image/png');
return dataURL;
},
downFile (url, type) {
var tmpa = document.createElement("a");
tmpa.download = url;
// tmpa.href = URL.createObjectURL(tmpDown);
// document.getElementById("hf").href = href; // 绑定a标签
// tmpa.click(); // 模拟点击实现下载
// var href = url; // 创建对象超链接
tmpa.href = url; // 绑定a标签
tmpa.target = url; // 绑定a标签
tmpa.click(); // 模拟点击实现下载
};