向上滚动时,动画标题消失

时间:2015-03-05 00:24:18

标签: javascript jquery css3

我创建了一个动画标题div菜单,可以在页面加载时向下滑动。我使用动画延迟来延迟动画1秒钟。当用户向下滚动时,标题div会改变颜色,但是当向上滚动时,标题会在瞬间消失。请帮忙。

$(window).scroll(function() {
            if ($(this).scrollTop() > 250){
                $('header').addClass("sticky");
                    $('a').css({
                        color: '#fff'
                    });
                }
                else{
                    $('header').removeClass("sticky");
                    $('a').css({
                        color: '#151515'
                    });

                }
        });
body{
    margin:0px;
}
#content{
    height:500px;
    width:500px;
    display:block;
    background-color:pink;
    margin: 0 auto;
    margin-top:50px;
}
header{
    position: fixed;
    top: -300px;
    width: 100%;
    height:50px;
    padding-top:25px;
    text-align: center;
    background: red;
    z-index: 1;
    font-size: .8em;
    
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    transition: all 0.4s ease;
    

    animation:theheader 1s;
    -moz-animation:top theheader 1s; /* Firefox */
    -webkit-animation:theheader 1s; /* Safari and Chrome */

    -webkit-animation-delay:  1s; /* Chrome, Safari, Opera */
    animation-delay:  1s;
    
     animation-fill-mode: forwards;
    -webkit-animation-fill-mode: forwards;




}
header.sticky {
    height:50px;
    padding-top:25px;
    background-color: blue;
    color: #FFF;
    
}
@-moz-keyframes theheader
{
    from {
        top: -300px;
    }
    to {
        top:0px;
    }
}
<header>
    MENU
</header>
<div id="content">
</div>
<div id="content">
</div>
<div id="content">
</div>

https://jsfiddle.net/qectrqg3/35/

1 个答案:

答案 0 :(得分:0)

如果你只是简单地为最高值设置动画,我建议使用转换而不是动画。转换将确保您在更改&#34;动画&#34;时不会出现闪烁。过渡期中的价值观。