检查用户滚动到页面底部是否正常工作

时间:2013-09-08 14:15:49

标签: javascript javascript-events jquery

我需要检测用户是否滚动到页面底部,以便我可以进行一些操作 但是我做错了什么,当我滚动到底部时没有任何反应但是当我滚动到顶部它会触发动作:(。
应该对面:)

$(window).scroll(function () {        
        if ($(window).scrollTop() == $(document).height() - $(window).height() && !($('#imgLoad').is(':visible'))) {
            alert('you hit bottom');
            loadMore();
        }
    });

6 个答案:

答案 0 :(得分:4)

请尝试这个

$(window).scroll(function() {
        if($(window).scrollTop() + $(window).height() == $(document).height()) {
       alert("bottom!");
   }
});

您还可以在以下问题上提供其他选项: Check if a user has scrolled to the bottom

答案 1 :(得分:1)

这是一篇很老的帖子,但如果这有助于将来帮助其他人。我遇到了同样的问题。当我从底部滚动到页面顶部时,事件将触发。使用document.body.clientHeight而不是$(window).Hight为我修复了一些东西。这是使用Chrome测试的。

$(window).scroll(function() {
    if($(window).scrollTop() + document.body.clientHeight == $(document).height()) {
        alert('bottom of page');
    }
});

答案 2 :(得分:1)

if (document.body.offsetHeight + document.body.scrollTop>= document.body.scrollHeight){
    alert("bottom!");
}

答案 3 :(得分:0)

$(window).on("scroll", function() {
    var scrollHeight = $(document).height();
    var scrollPosition = $(window).height() + $(window).scrollTop();
    if ((scrollHeight - scrollPosition) / scrollHeight === 0) {
     // when scroll to bottom of the page
    }
});

答案 4 :(得分:0)

   if($(window).scrollTop() + $(window).height() > $(document).height()-200) {
                alert();
                // add your custom function here. i.e what you want to do.
            }

这将有效。用户向下滚动页面,当满足if(条件)时,代码将被执行。

答案 5 :(得分:0)

请试一试。

following scroll function would be worked while window scrolling bottom in asp.net
$(window).scroll(function() {    
$(window).scrollTop() + document.body.clientHeight == $(document).height()
});

and following scroll function would be worked while window scrolling bottom in html or mvc page view.
$(window).scroll(function() {    
$(window).scrollTop() == $(document).height() - $(window).height()
});