解决getImageData()错误:画布被跨域数据污染的问题
<p>我的代码在本地主机上运行得很好,但在网站上却无法运行。</p>
<p>我从控制台收到此错误,对于这一行 <code>.getImageData(x,y,1,1).data</code>:</p>
<pre class="brush:php;toolbar:false;">Uncaught SecurityError: Failed to execute 'getImageData' on 'CanvasRenderingContext2D': The canvas has been tainted by cross-origin data.</pre>
<p>我的代码的一部分:</p>
<pre class="brush:php;toolbar:false;">jQuery.Event.prototype.rgb=function(){
var x = this.offsetX || (this.pageX - $(this.target).offset().left),y = this.offsetY || (this.pageY - $(this.target).offset().top);
if (this.target.nodeName!=="CANVAS")return null;
return this.target.getContext('2d').getImageData(x,y,1,1).data;
}</pre>
<p><strong>注意:</strong>我的图像网址 (src) 来自子域网址</p>