опциональный пропуск fx в mootools - PullRequest
0 голосов
/ 16 декабря 2009

Есть ли простой способ пропустить все валютные потоки, все еще устанавливая значения и вызывая события.

Я решил установить глобальные параметры длительности на 0, выполнив

Fx.prototype.options.duration = 0

но это все еще не решает мою проблему, потому что это занимает некоторое минимальное время, которое заканчивается большим количеством отображаемых ошибок.

что было бы хорошо, это что-то вроде

Fx.ENGINE = 'on' / 'off'
Fx.SPEED_MULTIPLYER = 1 ... 10

1 Ответ

0 голосов
/ 16 декабря 2009

Ну, после небольшого взлома я сам нашел решение ...

$extend(Fx.Durations, { skip: 0 });
$extend(Fx.prototype.options, { skip: false, multiplier: 1 });
Fx.implement({
    step: function() {
        var time = $time();
        if ((time < this.time + (this.options.duration / this.options.multiplier)) && !this.options.skip){
            var delta = this.transition((time - this.time) / (this.options.duration / this.options.multiplier));
            this.set(this.compute(this.from, this.to, delta));
        } else {
            this.set(this.compute(this.from, this.to, 1));
            this.complete();
        }
    },
    startTimer: function(){
        if (this.timer) return false;
        this.time = $time() - this.time;
        this.step();
        this.timer = this.step.periodical(Math.round(1000 / this.options.fps), this);
        return true;
    }
});

Теперь есть опции skip , которые позволяют пропустить эффект, и опция множитель для глобального ускорения / замедления эффекта.

джим

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...