javascript - 用js实现点击保存图片,chrome如何实现,ie下是可以的
PHP中文网
PHP中文网 2017-04-11 09:18:32
[JavaScript讨论组]

这是在网上找到的代码,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();  
            }  
PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(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();
}
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号