首先,我在一个本地EaselJS/CreateJS项目中工作,只是为了测试一些sprite和鼠标交互。
我在舞台上添加了一个简单的精灵形象,我称之为“enemy1”:

//Create the enemy sprite and add it to the stage
var enemy_image = new Image();
enemy_image .src = "enemy_sprite.png";
var enemy1 = new createjs.Bitmap(enemy_image);

enemy1 .x = 0;
enemy1 .y = 0;

stage.addChild(enemy1);

使用此代码,我希望每次用户单击它时都显示一个警报:
enemy1.on("click", function()
{
     alert("Clicked!");
});

相反,每次单击都会出现跨域错误,如下所示:
javascript - EaselJS Sprite on(“click)返回CORS错误-LMLPHP
如果问题是我在本地工作或与跨域请求相关-为什么图片加载(和显示)在后台很好,而错误只在我单击时显示?

最佳答案

Canvas非常乐意允许您向其添加跨源数据,但这样做(没有CORS)会污染画布。
当您试图在画布被污染时从画布读取数据时,会出现错误。
可能您正在使用的库正试图将数据读取为其代码的一部分,以确定您单击了什么。

09-25 20:05