setInterval в MovieClip.prototype - PullRequest
       16

setInterval в MovieClip.prototype

0 голосов
/ 23 декабря 2011

как я могу использовать setInterval в movieClip.prototype? этот код увеличивает значение num только один раз ...

   MovieClip.prototype.testFunc = function(num) {
        var num = isNaN(num) ? 0 : num;
        trace(num);
        clearInterval(this.slideDelay);
        num++;
        this.slideDelay = setInterval(this.testFunc, 4000,num);
    };
    var testMc = _root.createEmptyMovieClip("testMc", 1);
    testMc.testFunc(0);

1 Ответ

0 голосов
/ 12 февраля 2012

Это связано с запутанной частью ActionScript / JavaScript: значение ключевого слова this может быть различным в зависимости от контекста, в котором была вызвана функция.Когда ваш testFunc вызывается во второй раз (через setInterval), значение "this" не определено.Это делает сбой clearInterval, а также ваши последующие вызовы setInterval.

Используйте это как ваш вызов setInterval, чтобы получить желаемый эффект:

this.slideDelay = setInterval(this, "testFunc", 4000, num);
...