簡體   English   中英

mootools中的fx可選跳過

[英]optionals skipping of fx in mootools

有沒有一種簡單的方法可以跳過所有fx,同時仍然設置值和調用事件。

我想通過執行以下操作將全局fx持續時間選項設置為0

Fx.prototype.options.duration = 0

但這仍然不能解決我的問題,因為它花費最少的時間,最終導致很多顯示錯誤。

很好的是像

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

在一次小小的黑客入侵之后,我自己找到了解決方案...

$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;
    }
});

現在有一個跳過選項,允許您跳過效果,並使用一個乘法器選項來全局加快/減慢效果。

吉姆

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM