0

我正在尝试制作一个简单的粘性标题,当用户滚动时,它将跟随用户向下滚动。

到目前为止,我有:

$(document).scroll(function() {
      var topmarg = $(document).scrollTop();    
      $('#stickyheader').animate({ marginTop : "+=" + topmarg + "px" }, "slow" );
  });

哪个有效,但它似乎将金额“添加”到marginTop,因此,例如,如果我向下滚动 200 像素然后备份100 像素,#stickyheader实际上将在页面下方移动 300 像素,而不是向下移动 200 像素然后向上移动 100 像素。

有没有办法修改这个?我应该.css()改用吗?

4

1 回答 1

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;

});
于 2013-10-01T05:48:14.227 回答