加载页面时的jQuery窗口位置

3

我对以下jQuery函数有问题:

$(document).ready(function(){

    $(window).scroll(function(){
        if ($(window).scrollTop() + $(window).height() == $(document).height()) {
            $('.scrollToTop').fadeOut();
        } else {
            $('.scrollToTop').fadeIn();
        }
    });

    $('.scrollToTop').click(function(){
        $('html, body').animate({scrollTop : 0},800);
        return false;
    });
});

这个函数的作用是在用户滚动页面时显示一个 DIV。现在我的问题是,当页面加载并且窗口已经在顶部时,DIV 就会被显示出来!向下滚动 DIV 仍然保持可见状态。当点击该 DIV 时,窗口会向上滚动,DIV 就像应该消失了一样。问题就在于它会在页面加载后才出现。
所以我不知道是什么原因引起的?
非常感谢。
1个回答

2

只需要添加一个fadeOut或者初始隐藏即可。这样做就可以了。

$(document).ready(function(){
    $('.scrollToTop').hide();
    $(window).scroll(function(){
        if ($(window).scrollTop() + $(window).height() == $(document).height()) {
            $('.scrollToTop').fadeOut();
        } else {
            $('.scrollToTop').fadeIn();
        }
    });

    $('.scrollToTop').click(function(){
        $('html, body').animate({scrollTop : 0},800);
        return false;
    });
});

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接