setInterval(nissan.moveRight, 250); при выполнении этой строки в консоли выбивает сообщение Cannot read property 'css' of undefined at Car.moveRight. Если же, выполнять вручную nissan.moveRight() - все работает. Почему так выполняется?
var Car = function(x, y) {
this.x = x;
this.y = y;
};
Car.prototype.draw = function() {
var carHtml = '<img src="http://nostarch.com/images/car.png">';
this.carElement = $(carHtml);
this.carElement.css({
position: "absolute",
left: this.x,
top: this.y
});
$("body").append(this.carElement);
};
var tesla = new Car(300, 0);
var nissan = new Car(200, 100);
tesla.draw();
nissan.draw();
Car.prototype.moveRight = function() {
this.x += 5;
this.carElement.css({
left: this.x,
top: this.y
});
};
setInterval(nissan.moveRight, 250);