如何使用延迟TweenMax.to动画?

时间:2017-05-06 17:27:39

标签: javascript jquery css tweenmax

我使用TweenMax创建了一个动画,它将div的100%宽度的div设置为零。我有三个div,彼此相邻,与下面的图像重叠。现在我希望每个preload div类在前一个触发后几秒钟开始。

我尝试了类似setTimeout的东西,但是我无法让它工作。 我怎样才能实现上述目标?

CodePen:https://codepen.io/anon/pen/aWVZXL

1 个答案:

答案 0 :(得分:0)

我更改了脚本。如果你愿意,请重构。

$(document).ready(function() {
var toBeAnimated;
var currentAnimat = 0;

$('.link').click(function() {
    toBeAnimated = $(".preloader");
    console.log('lets start animation');
    preload(toBeAnimated[currentAnimat]);
});

function preload(elem) {
    var elem = $(elem);
    var width = elem.outerWidth();
    // Tween out preload div
    TweenMax.to(elem, 1.4, {
        width: 0,
        right: 0,
        onComplete: function() {
            elem.remove();
            currentAnimat++;
            if(currentAnimat >= toBeAnimated.length) {
                console.log('Animation done');
            } else {
                preload(toBeAnimated[currentAnimat]);
            }
        }
    });
}

});