gpt4 book ai didi

javascript - 位图列表[i]未定义

转载 作者:行者123 更新时间:2023-12-02 17:17:40 25 4
gpt4 key购买 nike

这里的代码在 Canvas 上随机位置绘制 5 个草图像。我给所有草对象一个唯一的名称。然后我为每个草对象创建了一个单击事件,它将显示它们各自的名称。

 bitmaplist[i].on('click',function vanish(event){

alert(bitmaplist[i].name);

}
);

但它一直给我错误,指出 bitmaplist[i] 未定义。此问题的原因可能是什么以及如何修复?

完整代码:

<html>
<head>
<script src="easeljs.js"></script>
</head>
<body>
<canvas id="mycanvas" width="1000" height="500" style="border:1px solid black;"></canvas>
<script>
function makeit(){
var bitmaplist=[];
var i;
var canvas=document.getElementById("mycanvas");
var ctx=canvas.getContext('2d');
var stage=new createjs.Stage(canvas);
var image=new Image();
image.src="grass.jpg";


for(i=0;i<5;i++){
bitmaplist[i]=new createjs.Bitmap(image);


bitmaplist[i].x=stage.canvas.width-Math.random()*900;
bitmaplist[i].y=Math.random()*400;
bitmaplist[i].name="grass"+i;
bitmaplist[i].speed=Math.random()*5;
bitmaplist[i].mouseEnabled=true;

stage.addChild(bitmaplist[i]);
stage.update();
bitmaplist[i].on('click',function vanish(event){

alert(bitmaplist[i].name);

}
);
}



}
window.onload=makeit;
</script>
</body>
</html>

最佳答案

尝试这个对象:

bitmaplist[i].on('click',function vanish(event){
alert(this.name);
});

或者使用Eventtarget属性对象:

bitmaplist[i].on('click',function vanish(event){
alert(event.target.name);
});

在此处了解更多信息 EventDispatcher

关于javascript - 位图列表[i]未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24275041/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com