为什么在变形之前不缺少Fx

Why does this not pauseFx before morph-ing?

本文关键字:Fx 变形 为什么      更新时间:2023-09-26

这个变形很好,但我需要它先暂停,然后变形。

var animate = (function(){
    var div = document.getElement('div.es-transition');
    if (div){
        div.set('morph', {duration: 800, transition: 'quad:out'});
        div.pauseFx(1000, 'morph');
        div.addClass('hidden');
        div.setStyles({'visibility': 'hidden', 'opacity': 0});
        div.removeClass('hidden').fade('in');
    }
});
window.addEvent('load', animate);

脑袋砰砰作响。

TIA

不知道pauseFx吗?这不是标准的mootools核心api。它有http://mootools.net/docs/core/Fx/Fx#Fx:pause-需要将其应用于实例。

在您的情况下,它没有任何意义,因为您甚至在运行它之前就暂停了。也就是说,使用setTimeoutdelaypause是中途停止并恢复变形/过渡。请说明您正在努力实现

此外。.set('morph')不适用于.fade()-淡入淡出基于tween选项,而不是morph。tween和morph之间的区别是单属性与多属性。

如果我理解正确,你需要重写为:

var animate = (function(){
    var div = document.getElement('div.es-transition');
    if (div){
        div.set('tween', {duration: 800, transition: 'quad:out'});
        div.addClass('hidden');
        div.setStyles({'visibility': 'hidden', 'opacity': 0});
        (function(){
            div.removeClass('hidden').fade(0, 1);
        }).delay(1000);
    }
});
window.addEvent('load', animate);