[解决]
定义类
var Stone = function(args){
var _this = this;
inherit(_this, args); //just copy all attributes from args to _this
_this.w = 32;
_this.h = 32;
_this.obstacle = true;
_this.padding = 0;
_this.sprite = {
x: 32,
y: 0
};
_this.draw = function(){
console.log(_this);
CanvasPainter.sprite("background", _this.sprite.x, _this.sprite.y,
_this.x, _this.y, _this.w, _this.h);
};
};
定义对象
var stone = new Stone({
x: 480,
y: 320
});
调用方法
stone.draw(); //throws "TypeError: Type error"
我已经知道我做的事情很愚蠢。你能帮我找到吗?
这是石头对象:
stone = {
draw: function (),
h: 32,
obstacle: true,
padding: 0,
sprite: {x: 32, y: 0},
w: 32,
x: 480,
y: 320
}
实际上错误来自CanvasPainter.draw 是我做过的蠢事
其他一切都很好,谢谢你的帮助
答案 0 :(得分:0)
inherit
函数定义在哪里?该功能对我来说很好。唯一的区别是inherit
而不是$.extend(_this, args)
。 (参见jQuery的扩展http://api.jquery.com/jQuery.extend/)