2012-08-09 78 views
0

第一個可見項目的位置,我有li的List。每個項目都有一個集合中的對應對象。當我開始滾動列表時,我想知道實際的第一個可見項目以及它在我的收藏中的位置。在我的第一個版本,這很容易造成每個項目必須具有相同的HIGHT,我可以僅僅通過一個項目的高度將列表的scrollTop的。但是在我們的新版本中,每個項目可以有不同的高度。獲取滾動列表

的問題是,它是一個無限滾動列表,它具有在移動設備上運行。因此,也許有更好的解決方案然後再遍歷所有項目,並總結了它的高度,直到其較大的則列表的scrollTop的。

是否有處理這個問題的常用方法。

回答

0

好吧,我發現使用document.elementFromPoint一個簡單的方法:

<script> 
    var span = $('span'); 
    var ul = $('ul') 
    var y = ul.offset().left +1; 
    var x = ul.offset().top +1; 
    $('ul').scroll(function(){ 
     var el = document.elementFromPoint(y,x); 
     span.html($(el).html()) 
    }) 
    </script> 

Example