You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GSAP ScrollTrigger标记与滑块元素实际边界偏差问题求助

GSAP ScrollTrigger 垂直滑块边界偏差问题

我正在用GSAP ScrollTrigger制作图片垂直滑块:设置id为scroller的隐藏元素高度为400vh,所有内容采用固定定位。滚动时通过ScrollTrigger控制#slider垂直移动,滑块元素进入指定区域时切换主背景。

驱动滑块动画的ScrollTrigger代码

gsap.to('#slider',{
        scrollTrigger:{
            trigger: "#scroller",
            start: 0,
            scrub: 1,
            snap:"labelsDirectional"
        },
        y:-sliderH*6-80,
    })

切换背景的ScrollTrigger批量处理代码

let elems=document.querySelectorAll('.slider-elem')
let heroBacks=document.querySelectorAll('.hero-back')
elems=Array.from(elems)
ScrollTrigger.batch(elems, {
    onLeave: (elements, triggers) => {
        gsap.to(heroBacks[heroBacks.length-elems.indexOf(elements[0])-1], { opacity: 0})
    },
    onEnterBack: (elements, triggers) => {
        x=gsap.to(heroBacks[heroBacks.length-elems.indexOf(elements[0])-1], { opacity: 1})
        console.log(x)
    },
    start:'top 60%',
    end:'bottom 10%',
    markers:true
});

滚动时整体功能正常,但滑块元素的实际边界(顶部、底部)与标记显示的边界存在偏差,相关截图如下:

  • 无偏差状态:无偏差状态
  • 存在偏差状态:存在偏差状态

内容的提问来源于stack exchange,提问作者Sohaib Krim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 05:58:27