JavaScript点击按钮下载图片,涉及同源下载和跨域下载
以下内容适用于同源下载图片:
参考:https://blog.csdn.net/Thea12138/article/details/82801375
<button class="download" onclick=" download('url')"><i class="layui-icon layui-icon-download-circle"></i></button>
function download(src) {var $a = document.createElement('a');$a.setAttribute("href", src);$a.setAttribute("download", "");var evObj = document.createEvent('MouseEvents');evObj.initMouseEvent( 'click', true, true, window, 0, 0, 0, 0, 0, false, false, true, false, 0, null);$a.dispatchEvent(evObj);
}
对于跨域的图片,使用上述方法只会打开一个新窗口显示要下载的图片,不会打开下载窗口,下载方法如下:
参考:https://segmentfault.com/q/1010000017159631
https://blog.csdn.net/visionke/article/details/84583105
function ddd(){ var src = 'http://pic.c-ctrip.com/VacationH5Pic/mice/wechat/ewm01.png';var canvas = document.createElement('canvas');var img = document.createElement('img');img.onload = function(e) {canvas.width = img.width;canvas.height = img.height;var context = canvas.getContext('2d');context.drawImage(img, 0, 0, img.width, img.height); canvas.getContext('2d').drawImage(img, 0, 0, img.width, img.height);canvas.toBlob((blob)=>{let link = document.createElement('a');link.href = window.URL.createObjectURL(blob);link.download = 'aaa'; link.click(); }, "image/jpeg"); }img.setAttribute("crossOrigin",'Anonymous');img.src = src;}
JavaScript点击按钮下载图片,涉及同源下载和跨域下载相关推荐
- JS下载图片到本地,解决跨域问题
说下需求,点击按钮,实现下载图片到本地的功能,后台返回的url是阿里oss存储图片的地址,一开始只能预览图片,再后来受同源策略影响,依旧不能实现,但是在生成的图片后拼接?time=当前时间戳就可以实现 ...
- JQuery实现点击按钮切换图片(附源码)--JQuery基础
JQuery实现切换图片相对比较简单,直接贴代码了哈,有注释噢!疑问请追加评论哈,不足之处还请大佬们指出! 1.案例代码: demo.html: <!DOCTYPE html> <h ...
- js实现点击按钮切换图片功能_☆*往事随風*☆的博客
文章目录 前言 一.DOM是什么? 二.对象的HTML DOM 树 三.图片切换练习 1.要求 2.实现思路 3.示例代码 1.html示例代码如下: 2.css示例代码如下: 2.js示例代码如下: ...
- Viewer.js点击按钮放大图片用法
1.Viewer.js点击按钮放大图片用法 <div onclick="getHideBig('hide_img_weight1')" id="btn_img_we ...
- Android 点击按钮切换图片
Android 点击按钮切换图片 效果如图: 点击后: 主要代码: //切换图片 but1.setBackgroundResource(R.drawable.qq1); 全部代码: public cl ...
- ImageButton点击按钮改变图片
一.ImageButton点击按钮改变图片 **************************ImageButton点击按钮改变图片 有两种写法*************************** ...
- vue中点击按钮切换图片
vue中点击按钮切换图片 直接附上代码,亲测有效 <!-- --> <template><div><div class="">< ...
- java下载图片到本地,例如从网上下载图片,下载淘宝图片,下载百度图片等
java下载图片到本地,例如从网上下载图片,下载淘宝图片,下载百度图片. 直接上代码如下: public static void download(String url,String saveFile ...
- ajax背景、ajax对象、ajax状态、ajax与http、ajax请求数据接口、同步与异步、ajax请求XML数据、封装ajax函数、artTemplate简介、同源策略和跨域请求、JSONP
AJAX简介: ajax背景: 1.AJAX(Asynchronous JavaScript And Xml)异步的 JavaScript 和 XML:ajax是浏览器提供的一套API,最早出现在谷歌 ...
- 同源策略和跨域请求解决方案
一.一个源的定义 如果两个页面的协议,端口(如果有指定)和域名都相同,则两个页面具有相同的源. 举个例子: 下表给出了相对http://a.xyz.com/dir/page.html同源检测的示例: ...
最新文章
- 为什么tcp不采用停等协议_为什么TCP建立连接协议是三次握手,而关闭连接却是四次握手呢?...
- 每日 30 秒之 对海量数据进行切割
- Jboss4集群配置之四:启动Jboss集群
- 对 makefile 中 $(MAKE) 的学习体会
- 解决报错:java.lang.NoSuchMethodException: com.tangyuan.entity.RicherProduct.<init>()
- 2021/11/16 Andriod Studio安装经验总结
- IT项目启示录——来自泰坦尼克号的教训(第五篇)(转)
- 邱天计算机,华北电力大学控制与计算机工程学院导师教师师资介绍简介-邱天...
- 使用PLC-Recorder快速连接PLC记录数据
- 智能手机谷歌眼镜都是嵌入式计算机,如何在手机上“运行”谷歌眼镜
- 论文笔记:多标签学习——LIFT算法
- 第八届蓝桥杯全国总决赛真题解析
- 使用js,对数值保留小数点后两位的处理(两种情况)
- unity3d英语单词拼写小游戏Pics Quiz Maker With Categories 3.0
- nekohtml解析html(string或是文件流)
- 向量的夹角余弦公式_两个向量的夹角的余弦值怎么求过程!! – 手机爱问
- Agglomerative Hierarchical Clustering(AHC)
- java 搞笑的事情_一件搞笑的事作文(精选10篇)
- YOLOv5、v7改进之二十六:改进特征融合网络PANet为ASFF自适应特征融合网络
- spug上线服务踩坑记