实现无限滚动

时间:2014-03-31 03:25:47

标签: javascript jquery infinite-scroll

我正在尝试使用无限卷轴但是当我向下滚动时根本没有发生任何事情。这就是我目前的分页看起来:

<ul class="elgg-pagination">
   <li class="elgg-state-disabled"><span>« Previous</span></li>
   <li class="elgg-state-selected"><span>1</span></li>
   <li><a href="http://siteexample.com/casting?offset=10">2</a></li>
   <li><a href="http://siteexample.com/casting?offset=20">3</a></li>
   <li><a href="http://siteexample.com/casting?offset=30">4</a></li>
   <li><a href="http://siteexample.com/casting?offset=40">5</a></li>
   <li><a href="http://siteexample.com/casting?offset=50">6</a></li>
   <li><a href="http://siteexample.com/casting?offset=10">Next »</a></li>
</ul>

这就是我的javascript外观:

$(window).scroll(function(){
var mostOfTheWayDown = ($(document).height() - $(window).height()) * 9 / 10;   
if ($(window).scrollTop() >= mostOfTheWayDown){
$container.infinitescroll({

  navSelector  : $('a',find('.elgg-state-selected')),    // selector for the paged     navigation 
  nextSelector : $('a',find('.elgg-state-selected').next('li').not('.elgg-state-disabled')),  // selector for the NEXT link (to page 2)
  itemSelector : '.item1',     // selector for all items you'll retrieve
  loading: {
  finishedMsg: 'No more pages to load.',
  img: 'http://i.imgur.com/6RMhx.gif'
}
  },
  // trigger Masonry as a callback
  function( newElements ) {
    // hide new items while they are loading
    var $newElems = $( newElements ).css({ opacity: 0 });
    // ensure that images load before adding to masonry layout
    $newElems.imagesLoaded(function(){
      // show elems now they're ready
      $newElems.animate({ opacity: 1 });
      $container.masonry( 'appended', $newElems, true ); 
     });
  }
);
  }

1 个答案:

答案 0 :(得分:0)

我会推荐这个插件,不要浪费你的时间重新发明轮子,享受jQuery的超棒!

http://www.infinite-scroll.com/

// infinitescroll() is called on the element that surrounds 
// the items you will be loading more of
  $('#content').infinitescroll({

    navSelector  : "div.navigation",            
                   // selector for the paged navigation (it will be hidden)
    nextSelector : "div.navigation a:first",    
                   // selector for the NEXT link (to page 2)
    itemSelector : "#content div.post"          
                   // selector for all items you'll retrieve
  });

你也可以试试这个:

http://airbnb.github.io/infinity/demo-on.html