ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

使用a链接实现点击下载网络图片

2022-08-19 16:34:28  阅读:137  来源: 互联网

标签:canvas false img height 点击 let document 链接 下载


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
       
    </style>
</head>
<body>
    <img src="http://192.168.0.71:3000/a1.jpg" alt="" class="img">
    
    <button onclick="downImg()">点击下载图片</button>

    <!-- <a href="http://192.168.0.71:3000/a1.jpg" download>使用a链接下载图片</a> -->

    <script>
        function downImg(){
            let a = document.createElement('a');
            let img = document.querySelector('.img');
            img.crossOrigin = 'anonymous';
            img.onload = function(){
                let data = getBase64Img(img);
                console.log(data);
                a.setAttribute('href', data);
                a.setAttribute('download', "");
                let event = document.createEvent('MouseEvents');
                event.initMouseEvent('click', true, true, window,0,0,0,0,0,false,false,true,false,0,null);
                a.dispatchEvent(event)
            };
        }

        function getBase64Img(img){
            let canvas = document.createElement("canvas");
            canvas.width = img.width;
            canvas.height = img.height;
            let ctx = canvas.getContext("2d");
            ctx.drawImage(img, 0, 0, img.width, img.height);
            let dataUrl = canvas.toDataURL("image/png");
            return dataUrl;
        }
    </script>
</body>
</html>

 

标签:canvas,false,img,height,点击,let,document,链接,下载
来源: https://www.cnblogs.com/xyzcba/p/16602388.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有