1.<a>download下载图片具有兼容性

所以需做兼容处理,使其兼容IE,就比较完美了。

2.最近有这方面的需求,从网上看了一些资料,拿过来不能直接使用,把他们整合了一下,作为笔记,方便自己以后使用,现在IE,Firefox,Chrome都可以用了。

3.代码如下:

(1)HTML部分

<div id="down"><a id="downLoad">Click Me!</a>
</div>

(2.)js部分

//①判断浏览器类型
function myBrowser() {var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串var isOpera = userAgent.indexOf("Opera") > -1;if(isOpera) {return "Opera"}; //判断是否Opera浏览器if(userAgent.indexOf("Firefox") > -1) {return "FF";} //判断是否Firefox浏览器if(userAgent.indexOf("Chrome") > -1) {return "Chrome";}if(userAgent.indexOf("Safari") > -1) {return "Safari";} //判断是否Safari浏览器if(userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera) {return "IE";}; //判断是否IE浏览器if(userAgent.indexOf("Trident") > -1) {return "Edge";} //判断是否Edge浏览器
}//②IE浏览器图片保存(IE其实用的就是window.open)
function SaveAs5(imgURL) {var oPop = window.open(imgURL, "", "width=1, height=1, top=5000, left=5000");for(; oPop.document.readyState != "complete";) {if(oPop.document.readyState == "complete") break;}oPop.document.execCommand("SaveAs");oPop.close();
}//③下载函数(区分IE和非IE部分)function oDownLoad(url) {if(myBrowser() === "IE" || myBrowser() === "Edge") {//IE (浏览器)SaveAs5(url);console.log(1)} else {//!IE (非IE)odownLoad.href = url;odownLoad.download = "";}}//④点击事件下载(只需更改图片路径即可)var odownLoad = document.getElementById("downLoad");
odownLoad.onclick = function() {oDownLoad("1.jpg")}

4.做如下几点说明:

(1) 360急速模式下

(2) 360兼容模式(相当于IE状态)

(3)Firefox

在火狐中保存的图片可以在(计算机=>下载  中找到)。

(4)Chrome

点击就直接下载了,就是使用<a href="1.jpg" download=""></a>下载的。

HTML里的a链接download 属性浏览器js点击下载图片相关推荐

  1. JS实现浏览器点击下载图片

    点击下载图片分两种: 1.一种是同源地址图片(也就是本地本项目中的图片): 2.另一种是不同源的图片:(不同域名下,比如阿里云 七牛云上的图片) 下面我们就具体说一下这两种图片下载的方式: 第一种(同 ...

  2. PC端微信浏览器js点击事件失效

    **电脑端微信浏览器js点击事件失效**前段时间发现开发的一个微信公众号上一个按钮的点击事件在手机上是正常的,电脑端手机微信里却不起作用.在网上找了好久都没有找到解决办法.后来查看其它的页面的同样的点 ...

  3. 微信链接跳转浏览器 H5实现APP下载功能实现方法

    由于微信的限制,应用文件在内置浏览器中下载全部被屏蔽掉,造成很多人用微信扫描二维码下载时点击下载按钮没反应,我想到的是做一个提示用户在浏览器中打开下载. 可以参考:微信打开网址添加在浏览器中打开提示  ...

  4. 文件链接在google浏览器无法打开或下载

    链接不是HTTPS的,认为不安全,替换成https就可以了 // 打开或下载文件 function openFile(extension,file_url){let replace = file_ur ...

  5. js实现a标签点击下载图片和txt等文件,而不是浏览器打开预览

    function downloadFile(url) {console.log(url)const link = document.createElement('a')fetch(url).then( ...

  6. IE浏览器下点击下载文件没反应

    今天测试系统中的文件下载时,点击文件下载后,浏览器没反应,在网上找了下原因是IE的临时文件夹目录没有了,设置一下即可. 方法如下: 设置下IE的临时文件夹即可

  7. HTML+JS实现浏览器下载图片 (可以下载第三方链接的图片)

    如果使用a标签指向一个图片的话,你会发现点击链接时它会直接在浏览器中打开图片并显示: <a href="http://www.baidu.com/img/baidu_jgylogo3. ...

  8. 微信内浏览器不支持下载APK文件的解决方案 微信中点击链接调用外部浏览器打开

    需求:在微信h5页面中下载第三方app -- 安卓, 直接下载apk文件包:iphone,跳转AppStore 分析:微信不支持,在微信中屏蔽了apk文件的下载以及AppStore的跳转(且除非和TX ...

  9. 属性浏览器控件QtTreePropertyBrowser编译成动态库(设计师插件)

    文章目录 一.回顾 二.动态库编译 1.命令行编译动态库和测试程序 2.vs工具编译动态库和测试程序 3.安装文档 4.测试文档 三.设计师插件编译 1.重写QDesignerCustomWidget ...

最新文章

  1. 如何使用Microsoft技术栈
  2. 直播预告 | AAAI 2022论文解读:融入知识图谱的分子对比学习
  3. spring boot+shiro中使用@RequiresRoles不生效,访问报错404
  4. 《死亡细胞》中神秘背景世界色彩设计(上)
  5. 前端学习(2159):vuecli脚手架的配置和安装
  6. 【转】医学影像处理相关知识整理(一)
  7. Python3错误和异常
  8. Java架构师面试问些什么?微服务之springcloud面试题(共22题,含详细解答)
  9. SQLAlchemy Transactions
  10. 267. Palindrome Permutation II --back tracking 以及palindrome 的优化方法ing
  11. [转]C#操作Excel开发报表系列整理
  12. 《数据结构与面向对象程序设计》第二、三周学习总结
  13. Unity Android 跳转拨号界面和一键加群
  14. windows2016服务器优化,Windows server 2016系统基本优化设置
  15. 联想计算机不能进入系统桌面,联想电脑无法重装系统-联想电脑怎么重装系统我的电脑启动后到不了桌面,最后屏幕上没有任何 爱问知识人...
  16. SharePoint 2013 App Development读书笔记1
  17. android按钮显示注册成功,Android中给按钮注册事件的四种方法
  18. iTunes无法与iPhone正常连接的解决办法
  19. vue3中Provide/Inject的使用
  20. matlab如何编写网页,[转载]如何使用matlab在网页中作图

热门文章

  1. IT行业34个最新专业术语
  2. 电子商务中的大数据分析——数据平台和人工智能
  3. 【生日碰撞和数字签名】
  4. ThoughtWork培训感想
  5. 实现微信支付wxpay
  6. xCode 编写C++程序
  7. Python下载和安装
  8. LeetCode:167. 两数之和 II - 输入有序数组(java)
  9. LCA(最近公共祖先)问题
  10. 如何去掉字符串前面的中括号