Javascript 画架:I';我想了解跨域位图是如何工作的

Javascript 画架:I';我想了解跨域位图是如何工作的,javascript,createjs,easeljs,Javascript,Createjs,Easeljs,我对javascript和EaselJS非常陌生,我搜索了文档以及这里的问题,我了解到我的鼠标事件无法与位图一起工作的最初问题是因为我试图从计算机上的文件路径使用位图 我现在明白了,我需要使用img.crossOrigin来允许easeljs处理这些图像,但即使我添加了这个,我仍然无法让它工作 以下是我所拥有的: function init(){ var canvas = document.getElementById('game'); //assign canvas to variable v

我对javascript和EaselJS非常陌生,我搜索了文档以及这里的问题,我了解到我的鼠标事件无法与位图一起工作的最初问题是因为我试图从计算机上的文件路径使用位图

我现在明白了,我需要使用img.crossOrigin来允许easeljs处理这些图像,但即使我添加了这个,我仍然无法让它工作

以下是我所拥有的:

function init(){
var canvas = document.getElementById('game'); //assign canvas to variable
var stage = new createjs.Stage(canvas);

var term = new Image();
    term.src = 'terminal.png';
    term.crossOrigin = "Anonymous"; 

var oswin = new Image();
    oswin.src = 'frame.png';
    oswin.crossOrigin = "Anonymous";

var terminal = new createjs.Bitmap(term);
        terminal.x = 28;
        terminal.y = 36;
        terminal.name = "terminal";
        stage.addChild(terminal);

var oswindow = new createjs.Bitmap(oswin);
        stage.addChild(oswindow);
        oswindow.x = 196;
        oswindow.y = 5;
        oswindow.name = "oswindow";

        //hide this bitmap 
        oswindow.visible = false;

//onclick to unhide the bitmap
terminal.on("click", handleClick);

stage.update();
}

function handleClick(){
    oswindow.visible = true;
    stage.update();

    }
我已经加入了crossOrigin,不幸的是,这仍然不起作用,我不知道为什么,因为尽管阅读了CrossDomain,我还是不太了解它。(我是一名初级程序员)


我现在完全离线工作,只是想学习,所以有一种方法可以解决这一问题。

您使用什么浏览器进行测试?您需要为其加载一些额外权限,以允许从浏览器访问文件。crossOrigin标志仅适用于发送allow access标头的服务器。要在本地工作,我建议使用XAMPP或MAMP之类的本地服务器。@chrisvanhooser我使用chrome来测试我的工作@兰尼,谢谢你!我现在就去调查!您使用什么浏览器进行测试?您需要为其加载一些额外权限,以允许从浏览器访问文件。crossOrigin标志仅适用于发送allow access标头的服务器。要在本地工作,我建议使用XAMPP或MAMP之类的本地服务器。@chrisvanhooser我使用chrome来测试我的工作@兰尼,谢谢你!我现在就去调查!