https://mbd.baidu.com/newspag...
在网址中执行以下JS代码,图片会自动被裁剪,原图片会被替换成base64资源,怎么实现将文章的文字和图片送进剪贴板?
for (var i = 0; i < document.getElementsByClassName('contentImg linexRBS').length; i++) {
var contImg = document.getElementsByClassName('contentImg linexRBS')[i]
// 1.onload必须指定为function 这里立即执行函数的返回不是一个function,要做修改
var targetImg = new Image();
targetImg.crossOrigin = '';
targetImg.src = contImg.getElementsByTagName("img")[0].src;
targetImg.onload = (function (num,contImg,targetImg) {
//2. 使用闭包后 注意变量生成的时机,注意对比下哪些变量需要放到闭包里
return function (){
var tupianwidth = contImg.offsetWidth;
var tupianheight = contImg.offsetHeight;
tupianheight = tupianheight - 200;
var canvas = document.createElement('canvas');
canvas.width = tupianwidth;
canvas.height = tupianheight;
var cxt = canvas.getContext('2d');
cxt.drawImage(targetImg, 0, 0);
var clipImage = canvas.toDataURL("image/png", 1);
document.getElementsByClassName('contentImg linexRBS')[num].getElementsByTagName("img")[0].src = clipImage;
}
})(i,contImg,targetImg);
}