滚动后显示div并在向上滚动时隐藏

时间:2014-01-25 12:25:22

标签: javascript jquery scroll

我有一个div,需要在用户向下滚动400像素时显示。当他向上滚动,高于400像素时,需要再次隐藏此div。我可以使用fadeIn()fadeOut(来完成此工作,但在这种情况下,我想通过使用animate()添加类似于slideUp()的小动画。但是这样做会使它变得非常多,有时它会出现,有时则不会出现。

为什么会这样?

Demo

1 个答案:

答案 0 :(得分:1)

使用$(window).scroll过于频繁。 建议你使用setInterval来检查scrollTop。

<强> Here is a demo

以下是JavaScript代码:

function update() {
    if ($(window).scrollTop() > 400) {
        $('.signup_scroll').animate({
            "bottom": '0px'
        }, 300);
    } else {
        $('.signup_scroll').animate({
            "bottom": '-90px'
        }, 300);
    }
}

setInterval(update, 500);