嗨,我有以下内容
$(window).scroll(function() {
if($(window).scrollTop() > 200){
$('.ccbrtlogo').css({'height': '25'});
$('.ccbrtlogo').css({'margin-top': '0'});
}else{
$('.ccbrtlogo').css({'height': '50'});
$('.ccbrtlogo').css({'margin-top': '16'});
}
});
当我向下滚动时,它确实有效,它将 Logo 设置为较小的 25px 高度,并将 margin-top 更改为 0,但是当我向后滚动时,它只会将 Logo 更改回 50,但不应用 16px margin-top
我在这里缺少什么?
最佳答案
您还需要添加测量单位。如果是 0
,您可以在其后放置任何内容,因为所有内容:0px
、0in
都是 0
。但对于另一个数字,您需要使用 16px
而不是 16
$('.ccbrtlogo').css({'margin-top': '16px'});
示例
$('#first').css({'margin-top': '100'});
$('#second').css({'margin-top': '100px'});
div{
float: left;
margin-left: 10px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="first">
First
</div>
<div id="second">
Second
</div>
关于Javascript JQuery scrollTop 向上滚动时重置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41844405/