0

我正在使用砖石 + 无限滚动,但是当我必须用来自另一个 ajax 调用的 HTML 替换 div 的内容时,滚动停止工作,即使很难导航元素也在那里。

因此,如果内容在页面首次加载时出现,则无限滚动有效,但如果在此页面中我用来自 ajax 调用并包含无限滚动元素的 HTML 替换 div 的内容,则无限滚动将停止工作。

任何想法

这是我的代码

$('#mainContainerHome').infinitescroll({
   navSelector  : '#page-nav',    // selector for the paged navigation
   nextSelector : '#page-nav a',  // selector for the NEXT link (to page 2)
   itemSelector : '.tile',     // selector for all items you'll retrieve
   loading: {
     finishedMsg: 'No more items.',
     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 });
     $('#mainContainerHome').masonry( 'appended', $newElems, true );
   });
}
);

我需要有一种方法来告诉 infiniteScroll 重新开始并使用通过 jQuery..html('xxxxx'); 添加的代码;陈述。

因为在我用动态内容(它包含导航元素)替换 div 的内容后,无限滚动停止工作。

4

1 回答 1

0

我对这些插件不熟悉,但马上我想我看到了一些东西;尝试:

$('#mainContainerHome').append($newElems).masonry( 'appended', $newElems, true );
于 2012-05-08T00:26:01.010 回答