开发者社区> 问答> 正文

用js实现点击保存图片,chrome如何实现,ie下是可以的

这是在网上找到的代码,ie下是可以实现,但是在chrome等主流浏览器就挂了,求解

function save(){
                var img = document.getElementById("testImg");  
                var oPop = window.open(img.src,"","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();  
            }  

展开
收起
a123456678 2016-03-11 10:38:11 3887 0
1 条回答
写回答
取消 提交回答
  • 不要用window.open,会被浏览器拦截,相当于那种弹窗广告,看过吧?

    其实除了IE之外,Html5有个新的属性叫download,直接就可以实现下载。不过不支持IE。
    用之前判断一下alink.download是否存在就可以了。不存在就用IE的方法,如果不想用新窗口的方法也可以用iframe的。

    function save() {
        var img = document.getElementById("testImg");
        var alink = document.createElement("a");
        a.href = img.src;
        a.download = "testImg.jpg";
        a.click();
    }
    2019-07-17 18:58:38
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
JavaScript异步编程 立即下载
Delivering Javascript to World 立即下载
编程语言如何演化-以JS的private为例 立即下载