没有canvas的HTML5 getImageData

有没有办法在没有canvas的情况下使用图像的getImageData? 我想要在图像的鼠标位置获得像素颜色。

不,你不能。

但是获取imageData可以使用内存中的canvas来完成,这很快捷:

var canvas = document.createElement('canvas'); var context = canvas.getContext('2d'); var img = document.getElementById('someImageId'); context.drawImage(img, 0, 0 ); var theData = context.getImageData(0, 0, img.width, img.height); 

您可以保留theData变量,这样您就不必在每次单击时都构建它。

请注意,如果图像来自另一个域,则此操作无效(因此,如果使用file://而不是http://打开html文件,则无效)。