当用户滚动到页面底部时,将DIV滚动到顶部;当用户向上滚动时隐藏DIV

时间:2016-02-25 16:14:34

标签: javascript jquery dom scroll

我沿着文档的流程在彼此之下有三个DIV,除第一个DIV之外的所有DIV都设置为display: none;。因此,第一个DIV(main_content)是页面加载时可见的三个DIV。

我需要一个允许下一个DIV出现的jQuery脚本,并在用户滚动到页面底部时滚动到视口的顶部(为了澄清,这会增加文档高度)我还需要脚本在用户向上滚动时隐藏新出现的DIV。

这就是我所要做的;它有效,但有一些奇怪的循环正在进行。

$(window).scroll(function(){
    showDiv();
});

function showDiv(){
    if( $(window).scrollTop() + $(window).height() >= (($(document).height())-10)){
        $("#main_content2").fadeIn(1000);
        $('html,body').animate({scrollTop: ($("#main_content2").offset().top - 88)}, 800);
        $(document).height('auto');
        $(window).height('auto');
    }else{
        $("#main_content2").fadeOut();
        $(document).height('auto');
        $(window).height('auto');
    }
}

不确定我的问题是否清楚,但让我知道,我会尝试更好地说出一些事情。提前谢谢。

编辑:感谢回复自由。但这不是我想要的。我不希望下一个DIV加入到顶部。我希望下一个DIV出现,并在用户滚动到文档底部时捕捉到顶部。在DIV捕捉到顶部之后,用户能够像往常一样滚动它,直到他到达该DIV的底部,然后下一个DIV(第三个)出现并捕捉到顶部。如果我之前不够清楚,我会道歉。

0 个答案:

没有答案