如何在滚动后修复固定边栏

时间:2015-08-07 16:46:41

标签: jquery html css

我有这个问题试图在滚动后尝试修复侧边栏。

posScroll大于sidebar偏移后,我想要维护的类会继续回到原来的位置,然后我想要它,我应该如何解决这个问题?

$(window).scroll(function() {

    var posScroll = $(window).scrollTop();


    var sidebar = $('.noticias-search').offset().top;
    console.log(sidebar,posScroll);

    if( posScroll  > sidebar) {
        $('.noticias-search').addClass('sidebar-fixed');
    }else{
        $('.noticias-search').removeClass('sidebar-fixed');
    }

});

1 个答案:

答案 0 :(得分:0)

尝试

var sidebar = $('.noticias-search').height();

function stickySearch(){
    var posScroll = $(window).scrollTop();
    if( posScroll  > sidebar) {
        $('.noticias-search').addClass('sidebar-fixed');
    }else{
        $('.noticias-search').removeClass('sidebar-fixed');
    }
} 

$(window).scroll(function() {

    stickySearch();

});

侧边栏高度是固定值(我假设),您测量它的高度,然后您将该高度与scrollTop()偏移量进行比较。如果它更大,那么你得到了课程,如果没有,那么课程将被删除。

试一试,看看它是否有效。

还要在你的问题中添加一些HTML。