滚动上的多个变形

时间:2019-03-19 01:59:08

标签: javascript greensock

努力获取多个SVG以便在滚动动画。我遵循了CodePen,第一个动画效果很好,但是第二个效果不好。我需要能够在首页上像这样运行4-5。

    var scrollMorph1  = new TimelineLite({paused:true})
    .to("#headerBottomMask",1, {morphSVG:"#headerBottomMask2"},0)
    .to("#headerBottom01a",1, {morphSVG:"#headerBottom01b"},0)
    .to("#headerBottom02a",1, {morphSVG:"#headerBottom02b"},0)
    .to("#headerBottom03a",1, {morphSVG:"#headerBottom03b"},0)
    .to("#headerBottom04a",1, {morphSVG:"#headerBottom04b"},0)

    $(window).scroll(function() {
        var scrolled = $(window).scrollTop();
        var diff = 50;

        var object1 = $('#header h1');
        var topOfRange1 = object1.offset().top + diff; 

        if (scrolled > topOfRange1 ) {
            scrollMorph1.play().timeScale(1);
            } else {scrollMorph1.reverse().timeScale(1);}
    }); 



    var scrollMorph2  = new TimelineLite({paused:true})
    .to("#clientsMask",1, {morphSVG:"#clientsMask2"},0)

    $(window).scroll(function() {
        var scrolled = $(window).scrollTop();
        var diff = 50;

        var object2 = $('#weare a');
        var topOfRange2 = object2.offset().top + diff; 

        if (scrolled > topOfRange2 ) {
            scrollMorph2.play().timeScale(1);
            } else {scrollMorph2.reverse().timeScale(1);}
    });

1 个答案:

答案 0 :(得分:0)

代码工作正常。不是针对路径,而是第二个对象的SVG ID。必须定位路径。