私はcanvasContext.getImageData(0、0、1、1).dataを使用して、画像のピクセル情報を取得しています。IE9を除くすべてのブラウザでうまく機能します。ランダムな時間にピクセル情報が利用できない場合、予想される255ではなく0を返します。
画像の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でこれが発生する理由についてのヘルプは素晴らしいでしょう!
ありがとう。