我使用了很棒的插件skrollr和infinitescroll,但是,当其他帖子加载时,skrollr会停止。
skrollr仅在加载其他帖子之前的高度工作。
是否可以使其无限滚动?
现在HTML就是这样。
<div class="scroll r r1" data-0="background-position:center 100px;" data-end="background-position:center 200px;;"></div>
<div class="scroll r r2" data-0="background-position:center 100px;" data-end="background-position:center 400px;"></div>
<script type="text/javascript">
jQuery(window).load(function() { var s = skrollr.init(); });
</script>
谢谢。
修改1 :
<div class="scroll r r1" data-0="background-position:center 100px;" data-end="background-position:center 200px;;"></div>
<div class="scroll r r2" data-0="background-position:center 100px;" data-end="background-position:center 400px;"></div>
<script type="text/javascript">
jQuery(window).load(function() { var s = skrollr.init(); });
</script>
html of new elements whose class is .eachnews
<script type="text/javascript">
jQuery(window).call(function() { skrollrInstance.refresh(.eachnews); });
</script>
另一个是这样的
<div class="scroll r r1" data-0="background-position:center 100px;" data-end="background-position:center 200px;;"></div>
<div class="scroll r r2" data-0="background-position:center 100px;" data-end="background-position:center 400px;"></div>
<script src="<?php echo get_template_directory_uri(); ?>/js/skrollr.min.js" type="text/javascript"></script>
<script type="text/javascript">
jQuery(window).load(function() { var s = skrollr.init(); skrollrInstance.refresh(.eachnews);});
</script>
另一个是这样的
<div class="scroll r r1" data-0="background-position:center 100px;" data-end="background-position:center 200px;;"></div>
<div class="scroll r r2" data-0="background-position:center 100px;" data-end="background-position:center 400px;"></div>
<script type="text/javascript">
jQuery(window).load(function() { var s = skrollr.init(); });
jQuery('.eachnews').load(function() { skrollrInstance.refresh('.eachnews'); });
</script>
我非常抱歉我的技术,但如果你教会我如何使它成功,我真的很感激。
答案 0 :(得分:0)
感谢您的支持。我做到了。
加载新元素后,我需要调用skrollr.get().refresh();
。
skrollrInstance.refresh(arrayOfNewElements)
和skrollr.get().refresh(arrayOfNewElements);
无论如何都无法正常工作。
我希望这会对某人有所帮助。
jQuery(function(){
jQuery('.news').infinitescroll({
navSelector : "div.nav-previous",
nextSelector : "div.nav-previous a",
itemSelector : ".eachnews",
bufferPx: 500,
loading: {
img:"url/images/loading.gif",
speed: 'fast',
finishedMsg:"<div class='done'><p>no more entries</p></div>",
msgText:""
}
},
function(arrayOfNewElems){
skrollr.get().refresh();
});
});
谢谢。