这里我试图创建一个redball,它是simpleBall构造函数的一个实例。但我编写的代码并没有在canvas上绘制任何内容。我不确定我的代码中有什么问题。请帮助我!!!
代码:
<html>
<head>
<script src="http://code.createjs.com/easeljs-0.7.1.min.js"></script>
</head>
<body>
<canvas id="mycanvas" width="1000" height="500" style="border:1px solid black;"></canvas>
<script>
function makeit(){
function simpleBall(color,radius){
this.color=color;
this.radius=radius;
this.initialize();
}
simpleBall.prototype.initialize=function(){
this.s=this.getGraphics();
}
simpleBall.prototype.getGraphics=function(){
var s=new createjs.Shape();
s.graphics.beginFill(this.color).drawCircle(0,0,this.radius);
return s;
}
var canvas=document.getElementById("mycanvas");
var stage=new createjs.Stage(canvas);
var ball=new simpleBall("red",10);
ball.x=100;
ball.y=100;
stage.addChild(ball);
stage.update();
}
window.onload=makeit;
</script>
</body>
</html>
答案 0 :(得分:0)
simpleBall实例&#34; ball&#34;不是DisplayObject。您必须引用s
属性,因为它是Shape实例。在您的示例中,您应该在控制台中看到错误。
var ball=new simpleBall("red",10);
var shape = ball.s;
shape.x=100;
shape.y=100;
stage.addChild(shape);