我正在尝试制作一个简单的粘性标题,在用户滚动时会跟随用户。
到目前为止,我有:
$(document).scroll(function() {
var topmarg = $(document).scrollTop();
$('#stickyheader').animate({ marginTop : "+=" + topmarg + "px" }, "slow" );
});
哪个有效,但它似乎将金额“添加”到marginTop
,因此,例如,如果我向下滚动200px然后向上向上100px,#stickyheader
实际上会向下移动300px,然后200倒然后100倒。
有没有办法对此进行修改?我应该使用.css()
吗?
答案 0 :(得分:1)
var lastscroll=0;
$(document).scroll(function() {
var topmarg = $(document).scrollTop();
if(topmarg>lastscroll){
$('#stickyheader').animate({ marginTop : "+=" + topmarg + "px" }, "slow" );
}else{
$('#stickyheader').animate({ marginTop : topmarg + "px" }, "slow" );
}
lastscroll =topmarg;
});