ScrollMagic 动画和滚动锁定问题

ScrollMagic Animation and Scroll Locking Issue

提问人:ExcelVBANewbie 提问时间:11/16/2023 更新时间:11/16/2023 访问量:10

问:

我目前正在做一个 Web 项目,我正在使用 ScrollMagic 创建由滚动触发的动画。我使用 TimelineMax 库为公司名称制作了特定的动画。此外,我尝试在动画期间锁定屏幕,并在用户滚动时将其解锁。

但是,我实现的代码没有按预期工作。动画触发正常,但滚动锁定和解锁行为未按预期工作。这是我正在使用的代码:

$(document).ready(function () {
    // Initialize the ScrollMagic Controller
    var controller = new ScrollMagic.Controller();

    // Create your first scene (ourScene)
    var ourScene = new ScrollMagic.Scene({
        triggerElement: '#project03'
    })
        .setClassToggle('#project03', 'fade-in');

    // Add the "typing" animation for the company name
    var textAnimation = new TimelineMax();
    var letters = document.querySelectorAll('#company-name span');
    letters.forEach(function (letter, index) {
        textAnimation.to(letter, 0.5, { opacity: 1, delay: index * 0.2 });
    });

    var companyNameScene = new ScrollMagic.Scene({
        triggerElement: '#company-name',
        triggerHook: 1,
        reverse: false
    })
        .setTween(textAnimation)
        .setClassToggle('#company-name', 'visible')
        .addTo(controller)
        .on("start", function () {
            $("body").css("overflow", "hidden");
        });

    var scrollFunction = function () {
        $("body").css("overflow", "auto");
        $(window).off("scroll", scrollFunction);
    };

    $(window).on("scroll", scrollFunction);

    ourScene.addTo(controller);
});

我尝试了各种方法,但我似乎无法让滚动锁定和解锁正常工作。有人可以帮我确定导致问题的原因并提出解决方案吗?谢谢!

javascript jquery 动画 scrollmagic

评论


答: 暂无答案