jquery设置div动画以移动直到子div位于某个位置

jquery设置div动画以移动直到子div位于某个位置,jquery,jquery-animate,Jquery,Jquery Animate,HTML: JQUERY: header { margin: 0; padding: 0; border: 0; position: relative; top: 20%; width: 100%; z-index: 10; overflow: auto; } 这就是我的问题: 我希望我的整个“标题”向上移动,直到“导航”距离顶部5%。 有人有主意吗 这里我用-=60%来说明我想要发生什么,但我想要的是当“导航”从顶部达到5%时动

HTML:

JQUERY:

header {
    margin: 0;
    padding: 0;
    border: 0;
    position: relative;
    top: 20%;
    width: 100%;
    z-index: 10;
    overflow: auto;
}
这就是我的问题: 我希望我的整个“标题”向上移动,直到“导航”距离顶部5%。 有人有主意吗

这里我用-=60%来说明我想要发生什么,但我想要的是当“导航”从顶部达到5%时动画停止: 编辑

我想这不是一个完美的解决方案,但它是有效的:


  • 你的
    br
    s看起来不对,应该在末尾加上结束斜杠, 像这样:

  • s不应具有
    href
    属性,而应放置
    标记 在内部或使用
    rel
    属性,例如:
  • 我不太明白会发生什么事。你的头应该是 直到什么情况?还有,做这件事有什么意义 是否在更改窗口位置时显示动画?也许你 请提供一个JSFIDLE示例

嘿,兄弟,我想你需要在动画功能中使用高度选项。为了更好地理解更新后的答案,请参考以下内容:)感谢您指出brs,对于li,这只是我的一个复制错误:)我刚刚添加了一个JSFIDLE
header {
    margin: 0;
    padding: 0;
    border: 0;
    position: relative;
    top: 20%;
    width: 100%;
    z-index: 10;
    overflow: auto;
}
$('li').click(function(){
    $('header').animate({???},  5000, function(){
        window.location.href = link;
    });
});