Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Анимированные изображения на Canvas (https://javascript.ru/forum/misc/21826-animirovannye-izobrazheniya-na-canvas.html)

asci 26.09.2011 00:20

Анимированные изображения на Canvas
 
Делаю клиент игрушки (портирую ради опыта с флеша на хтмл5)

Есть такой класс
function Animation(images, speed) {
		this.frame=[];
		this.speed = speed;
		this.i = 0;
		this.max_i = images.length - 1;
		for (j = 0; j < images.length; j++) {
			this.frame[j] = images[j]
		}
		this.animate = function () {
			if (this.i < this.max_i) {
				this.i++
			} else {
				this.i = 0;
			}
			this.image = this.frame[this.i]
		}
		this.image = this.frame[this.i]
		clearInterval(this.timer);
		this.timer = setInterval(this.animate, this.speed);
	};

В него я передаю массив загруженных изображений и скорость, с которой я хочу что бы они менялись.
Создаю объект типа moving = new Animation(arr_imgs, 300);
В нужном месте вызываю рендер типа moving.image, но ничего не происходит...
ЧЯДНТ?
Если что я только осваиваю азы JS на самом начальном уровне, как и программирование в целом))
Заранее благодарю за потраченное время)

zebra 26.09.2011 00:49

var self = this;
this.timer = setInterval(function() {
     self.animate();
}, this.speed);

asci 26.09.2011 01:02

спасибо огромное)) так и думал что напутал что то с контекстом вызова!


Часовой пояс GMT +3, время: 16:28.