需要帮助以使用jquery从scrollTop获取最后一页

时间:2014-01-17 05:50:24

标签: javascript jquery html css

我只是学习javascript并且需要一些帮助来从jquery scrollTop获取最后一页元素。

所以这里是我的代码:

$(window).scroll(function() {
    $("ul.pages li").each(function(i,e){
                    var offset = $(e).offset();
        if($(window).scrollTop() >= offset.top){
            $(".right_footer").text($(e).attr("data-id"));
        }   
    })
});

在html代码中

<ul class="pages">
   <li class="section" data-id="page_1"></li>
   <li class="section" data-id="page_2"></li>
   <li class="section" data-id="page_3"></li>
   <li class="section" data-id="page_4"></li>
</ul>

好吧,当我滚动页面时,我获得了data-idpage_1page_2page_3NAN)的全部价值,但我可以没有得到data-id="page_4"的最后一个值,javascript说NAN

任何人都可以帮助我吗?

全部谢谢!

2 个答案:

答案 0 :(得分:1)

事实证明你的代码没有任何问题,只是你无法在最后一个列表项上看到结果,因为它不够高,不能滚动页面。随着真实内容的增加,这个问题将会消失。在此期间,您可以通过指定页面CSS中li元素的高度来模拟大块内容,如下所示:

ul.pages{
  float:left;
  width:1024px;
  height:auto;
}

li.page{
  width:1024px;
  height:700px; /* <-- Make this huge in the absence of content */
  display:block;
}

答案 1 :(得分:0)

此jquery有助于强制您的浏览器转到页面顶部:

$(".yourElementClass").click(function(){
 $(".yourDivName").animate({ scrollTop: 0 }, ’slow’);
 });