2

我正在使用 canvasContext.getImageData(0, 0, 1, 1).data 来检索图像上的像素信息。它适用于除 IE9 以外的所有浏览器。在随机时间像素信息不可用,它返回 0 而不是预期的 255。

我正在图像的 onload 事件中执行 getImageData 代码。图像 src 是在我创建 onload 函数后定义的。

我目前对 IE9 的破解是:

var image = new Image();

image.onload = function (e) {
        while (canvasContext.getImageData(0, 0, 1, 1).data[0] == 0) {
            canvasContext.drawImage(image, 0, 0, 200, 2);
        }
        // Do other important stuff
}

image.src = "someImage.png";

发生的情况是 while 循环运行了大约 30-60 次,然后它最终检索像素信息。

关于为什么在 IE9 中发生这种情况的任何帮助都会很棒!

谢谢。

4

0 回答 0