html 图片position,html2canvas截图的时候,dom元素设置为position absolute之后截取出的图片,此dom元素内容截取不到...

问题描述

html2canvas截图的时候,dom元素设置为position absolute之后截取出的图片,此dom元素内容截取不到

问题出现的环境背景及自己尝试过哪些方法

google没找到答案,但是确实去掉dom的position:absolute就可以截取出dom内容

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

var copyDom = targetDom;

copyDom.css(

{

'background-image':'url("./bg03.jpg")'

}

);

/* $('body').append(copyDom);//把copy的截图对象追加到body后面*/

var width = copyDom.offsetWidth;//dom宽

var height = copyDom.offsetHeight;//dom高

var scale = 2;//放大倍数

var canvas = document.createElement('canvas');

canvas.width = width*scale;//canvas宽度

canvas.height = height*scale;//canvas高度

var content = canvas.getContext("2d");

content.scale(scale,scale);

var rect = copyDom.get(0).getBoundingClientRect();//获取元素相对于视察的偏移量

content.translate(-rect.left,-rect.top);//设置context位置,值为相对于视窗的偏移量负值,让图片复位

html2canvas(copyDom[0], {

/* allowTaint:true,

useCORS:true,

tainTest:true,*/

scale:scale,

canvas:canvas,

width:width,

heigth:height,

}).then(function (canvas) {

downloadImage(canvas.toDataURL(),'xxx.png')

});

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值