我会尽力解释我的问题,但您可以在此处查看代码:
我有导航,一旦用户滚动到页面上的某个点,导航的底部就会中断并粘在用户窗口的顶部。它的工作方式是从顶部断开14px,然后动画到 top: 0px。
然后,一旦用户滚动回顶部,导航应该动画回到它的原始位置(顶部:78px)。如果您在 jsfiddle 中查看我的示例,它是第一次这样做,并且似乎按预期工作。但是,如果您再次滚动,事情就会完全混乱。
任何人都有代码建议可以使这个功能正确吗?我花了几个小时尝试不同的修复方法,但没有任何效果。
我会尽力解释我的问题,但您可以在此处查看代码:
我有导航,一旦用户滚动到页面上的某个点,导航的底部就会中断并粘在用户窗口的顶部。它的工作方式是从顶部断开14px,然后动画到 top: 0px。
然后,一旦用户滚动回顶部,导航应该动画回到它的原始位置(顶部:78px)。如果您在 jsfiddle 中查看我的示例,它是第一次这样做,并且似乎按预期工作。但是,如果您再次滚动,事情就会完全混乱。
任何人都有代码建议可以使这个功能正确吗?我花了几个小时尝试不同的修复方法,但没有任何效果。
问题是您在定位导航时使用了相对值。如果您删除延迟和动画并使用绝对值,效果会很好。
这是一个更新的小提琴:http: //jsfiddle.net/xPxhf/6/
这样的东西(http://jsfiddle.net/jvJc4/2/)有用吗?