右侧浮动层 智能固定的问题,想必大家会经常遇到,小弟遇到一个问题:当滚动条滚动的时候,层到顶部的时候  固定位置,这个是可以的但是,当滚动到底部的时候,因为底部是全屏的横条,该层会覆盖住底部,所以想请问下:如何判断该层到底部的时候就不要固定显示了,让他随左边动,比如腾讯微博的 右侧的返回顶部的按钮。到底部还有一段距离的时候就不要再往下了。总的来说 就是 智能固定层 到底部的时候 让他跟随滚动条,但是滚动到底部还有一段距离的时候就不要让他更随滚动条了。小弟写了一个 但是不太完美,请大侠帮忙搞个,感谢感谢
footer为底部信息层;
sidebar为右侧固定层;<script type="text/javascript">
   $(function(){
          var ftop=$(".footer").offset().top;
  var wtop=$(".sidebar").offset().top;  
  $(window).scroll(function(){
      var scroll_top = $(this).scrollTop();
if(scroll_top>=wtop)
{
$(".sidebar").css({"position":"fixed","top":0});
}
else 
{
$(".sidebar").css({"position":"static"});
}
// 关键是下面这个判断有点问题。
if(scroll_top>ftop-$(".sidebar").height())
{
$(".sidebar").css({"position":"relative","top":ftop-$(".sidebar").height()-220});
}   
    });
   })
   
   
</script>jquery

解决方案 »

  1.   


     $(function(){
              var ftop=$(".footer").offset().top;
      var wtop=$(".sidebar").offset().top;  
      $(window).scroll(function(){
      
          var scroll_top = $(this).scrollTop();if(scroll_top<=ftop-$(".sidebar").height())
    {
        if (scroll_top >= wtop) {
            $(".sidebar").css({ "position": "fixed", "top": 0 });
        }
        else {
            $(".sidebar").css({ "position": "static" });
        }
    }   
        });
       })
      

  2.   

    经测试不行哇不过还是谢谢你了
    总的来说 就是 智能固定层 到顶部的时候 让他固定变fixed,但是滚动到底部还有一段距离的时候就不要让他固定了  变成 relative;