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

Next.js+Tailwind项目Android端CSS滚动动画卡顿问题求助

滚动时Logo缩小动画在Android设备卡顿的优化问题

我在基于Next.js和Tailwind构建的应用中遇到渲染动画问题:滚动时缩小Logo的简单动画仅在Android设备上出现卡顿。测试了2台iPhone、若干笔记本电脑及3台安卓手机(三星Note10、Flex 4、某款小米机型),仅安卓设备存在该问题。

滚动检测逻辑

useEffect(() => {
    window.addEventListener('scroll', stickNavbar);
    return () => window.removeEventListener('scroll', stickNavbar);
}, []);

useEffect(() => {
    offsetX < 1024 ? offsetY > 40 ? setScroll(true) : setScroll(false) : undefined
    offsetX >= 1024 ? offsetY > 76 ? setScroll(true) : setScroll(false) : undefined
}, [offsetY, offsetX])

const stickNavbar = () => {
    if (window !== undefined) {
        setOffsetY(window.scrollY)
        setOffsetX(screen.width)
    }
};

类名切换逻辑

${scroll ? 'w-8 scrolled' : ''}

动画样式代码

.nav {
  .logo{
    //transition-delay: 0.15s;
    transition-property: all;
    transition-timing-function: ease-in-out;
    transition-duration: 0.3s;
    top: -1.5rem;

    &.scrolled{
      margin-top: 2.15rem;
      margin-left: 0.75rem;
    }

    @include desktop(){
      transition-delay: 0s;
    }
  }
}

我已注释过渡延迟,设置延迟或许能缓解卡顿,但想了解还有哪些可优化的方向?

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 14:40:18