jquery实现下载图片功能


Posted in jQuery onJuly 18, 2019

本文实例为大家分享了jquery实现下载图片的具体代码,供大家参考,具体内容如下

<!DOCTYPE html>
<html lang="en">
 
<head>
 <meta charset="UTF-8">
 <title>Document</title>
 <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"></script>
 <style>
 </style>
</head>
 
<body>
 <div class="box">
 <div class="card">
 <img id="testimg1" src="./img/a.jpg"/>
 <a href="javascript:;" class="down_btn_a">点击下载</a>
 </div>
 </div>
 
 
 <script>
 //判断是否为Trident内核浏览器(IE等)函数
 function browserIsIe() {
 if (!!window.ActiveXObject || "ActiveXObject" in window){
  return true;
 }
 else{
  return false;
 }
 }
 //创建iframe并赋值的函数,传入参数为图片的src属性值.
 function createIframe(imgSrc) {
 //如果隐藏的iframe不存在则创建
 if ($("#IframeReportImg").length === 0){
  $('<iframe style="display:none;" id="IframeReportImg" name="IframeReportImg" onload="downloadImg();" width="0" height="0" src="about:blank"></iframe>').appendTo("body");
 }
 //iframe的src属性如不指向图片地址,则手动修改,加载图片
 if ($('#IframeReportImg').attr("src") != imgSrc) {
  $('#IframeReportImg').attr("src",imgSrc);
 } else {
  //如指向图片地址,直接调用下载方法
  downloadImg();
 }
 }
 //下载图片的函数
 function downloadImg() {
 //iframe的src属性不为空,调用execCommand(),保存图片
 if ($('#IframeReportImg').src != "about:blank") {
  window.frames["IframeReportImg"].document.execCommand("SaveAs");
 }
 }
 //接下来进行事件绑定
 var aBtn = $(".card .down_btn_a");
 if (browserIsIe()) {
 //是ie等,绑定事件
 aBtn.on("click", function() {
 var imgSrc = $(this).siblings("img").attr("src");
 //调用创建iframe的函数
  createIframe(imgSrc);
 });
 } else {
 aBtn.each(function(i,v){
 //支持download,添加属性.
 var imgSrc = $(v).siblings("img").attr("src");
 $(v).attr("download",imgSrc);
 $(v).attr("href",imgSrc);
 })
 }
 </script>
</body>
 
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

jQuery 相关文章推荐
使用jQuery卸载全部事件的思路详解
Apr 03 jQuery
jQuery实现radio第一次点击选中第二次点击取消功能
May 15 jQuery
jQuery UI 实例讲解 - 日期选择器(Datepicker)
Sep 18 jQuery
jQuery EasyUI 折叠面板accordion的使用实例(分享)
Dec 25 jQuery
jQuery NProgress.js加载进度插件的简单使用方法
Jan 31 jQuery
jquery radio 动态控制选中失效问题的解决方法
Feb 28 jQuery
jQuery阻止事件冒泡实例分析
Jul 03 jQuery
jQuery实现checkbox全选、反选及删除等操作的方法详解
Aug 02 jQuery
JQuery样式与属性设置方法分析
Dec 07 jQuery
Jquery+AJAX实现无刷新上传并重命名文件操作示例【PHP后台接收】
May 29 jQuery
Jquery 获取相同NAME 或者id删除行操作
Aug 24 jQuery
jQuery插件实现图片轮播效果
Oct 19 jQuery
jQuery实现图片下载代码
Jul 18 #jQuery
jquery图片预览插件实现方法详解
Jul 18 #jQuery
jquery实现垂直无限轮播的方法分析
Jul 16 #jQuery
JQuery实现简单的复选框树形结构图示例【附源码下载】
Jul 16 #jQuery
jquery实现自定义树形表格的方法【自定义树形结构table】
Jul 12 #jQuery
JavaScript表格隔行变色和Tab标签页特效示例【附jQuery版】
Jul 11 #jQuery
JavaScript实现的弹出遮罩层特效经典示例【基于jQuery】
Jul 10 #jQuery
You might like
php中simplexml_load_string使用实例分享
2014/02/13 PHP
ThinkPHP控制器间实现相互调用的方法
2014/10/31 PHP
php开发中的页面跳转方法总结
2015/04/26 PHP
隐藏Nginx或Apache以及PHP的版本号的方法
2016/01/03 PHP
PHP使用PHPExcel实现批量上传到数据库的方法
2017/06/08 PHP
Nigma vs Liquid BO3 第一场2.14
2021/03/10 DOTA
20个最新的jQuery插件
2012/01/13 Javascript
jQuery 遍历-nextUntil()方法以及prevUntil()方法的使用介绍
2013/04/26 Javascript
JS,Jquery获取select,dropdownlist,checkbox下拉列表框的值(示例代码)
2014/01/11 Javascript
jQuery表格行上移下移和置顶的实现方法
2015/10/08 Javascript
vuejs动态组件给子组件传递数据的方法详解
2016/09/09 Javascript
使用vue.js编写蓝色拼图小游戏
2017/03/17 Javascript
移动端图片上传旋转、压缩问题的方法
2018/10/16 Javascript
微信小程序3种位置API的使用方法详解
2019/08/05 Javascript
微信小程序制作扭蛋机代码实例
2019/09/24 Javascript
解决vscode进行vue格式化,会自动补分号和双引号的问题
2020/10/26 Javascript
Javascript新手入门之字符串拼接与变量的应用
2020/12/03 Javascript
使用python统计文件行数示例分享
2014/02/21 Python
Python实现周期性抓取网页内容的方法
2015/11/04 Python
python八大排序算法速度实例对比
2017/12/06 Python
python实现12306抢票及自动邮件发送提醒付款功能
2018/03/08 Python
Python装饰器的执行过程实例分析
2018/06/04 Python
详解Appium+Python之生成html测试报告
2019/01/04 Python
使用python实现语音文件的特征提取方法
2019/01/09 Python
python如何读取bin文件并下发串口
2019/07/05 Python
详解Python time库的使用
2019/10/10 Python
Pytorch 的损失函数Loss function使用详解
2020/01/02 Python
Python 实现进度条的六种方式
2021/01/06 Python
基于PyTorch中view的用法说明
2021/03/03 Python
Love, Bonito国际官网:新加坡女装品牌
2021/03/13 全球购物
文案策划求职信
2014/03/18 职场文书
婚前保证书
2014/04/29 职场文书
2014年社区教育工作总结
2014/12/02 职场文书
2015年复活节活动总结
2015/02/27 职场文书
计划生育个人总结
2015/03/02 职场文书
vue使用v-model进行跨组件绑定的基本实现方法
2021/04/28 Vue.js