js实现当前屏幕截图并另存为图片

首先要用到 html2canvas 插件,这个插件的作用是,把指定dom元素克隆一份,并转化为canvas
//保存数据,把当前报表的数据保存为Png图片,在触发另存为...的同时,指定文件名和文件格式
        $('#saveData').click(function () {
            //#proMain:要截图的DOM元素
            //useCORS:true:解决跨域问题
            html2canvas(document.querySelector('#proMain'),{useCORS:true}).then(function (canvas) {
                //获取年月日作为文件名
                var timers=new Date();
                var fullYear=timers.getFullYear();
                var month=timers.getMonth()+1;
                var date=timers.getDate();
                var randoms=Math.random()+'';
                //年月日加上随机数
                var numberFileName=fullYear+''+month+date+randoms.slice(3,10);
                var imgData=canvas.toDataURL();
                //保存图片
                var saveFile = function(data, filename){
                    var save_link = document.createElementNS('http://www.w3.org/1999/xhtml', 'a');
                    save_link.href = data;
                    save_link.download = filename;

                    var event = document.createEvent('MouseEvents');
                    event.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
                    save_link.dispatchEvent(event);
                };
                //最终文件名+文件格式
                var filename = numberFileName + '.png';
                saveFile(imgData,filename);
                //document.body.appendChild(canvas);  把截的图显示在网页上
            })
        })

 

  • 4
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值