<div id='img3'>background-image with this</div>
#img3 {
background-image: url("../icons/we-flow.png");
}
var img = img3.computedStyleMap().get("background-image");
//img=img1;
var canvas=document.createElement('canvas');
img.crossOrigin="Anonymous";
var ctx=canvas.getContext('2d');
try {
ctx.drawImage(img, 0, 0);
var data=ctx.getImageData(0, 0, canvas.width, canvas.height).data;
}catch (error) {
console.log('refresh page will get this', img.toString(), {error, img});
}
用 chrome 83 运行这段代码,第一次加载代码,一切正常,但是当我在浏览器中刷新页面时,我得到了 console.log:
DOMException: Failed to execute 'getImageData' on 'CanvasRenderingContext2D': The canvas has been tainted by cross-origin data.
为什么以及如何解决?