我對Paul Irish的無限滾動插件有點麻煩。如果我只有1頁結果,它的效果很好,但如果我有多頁結果,它會一遍又一遍地重複最後一頁。這裏是我的無限滾動配置:無限滾動不是函數錯誤
$('#grid').infinitescroll({
navSelector : "#paginationControl:first",
nextSelector : "#paginationControl a#next:first",
itemSelector : "#grid .entry",
debug : true,
bufferPx : 500
},
function(newElements){
//Apply masonry
var $newElems = $(newElements);
$newElems.imagesLoaded(function(){
$("#grid").masonry('appended', $newElems);
});
//See if this is the last page
if(curPage >= pages){
alert("Infinite scroll is paused.");
$('#grid').infinitescroll('pause');
}
});
這裏是我的分頁控件:
<?php if ($this->pageCount): ?>
<div class="paginationControl" id="paginationControl">
<!-- Previous page link -->
<?php if (isset($this->previous)): ?>
<a href="<?php echo $this->url(array('page' => $this->previous)); ?>" id="previous">
< Previous
</a> |
<?php else: ?>
<span class="disabled">< Previous</span> |
<?php endif; ?>
<!-- Numbered page links -->
<div id="numberedPages">
<?php foreach ($this->pagesInRange as $page): ?>
<?php if ($page != $this->current): ?>
<a href="<?php echo $this->url(array('page' => $page)); ?>">
<?php echo $page; ?>
</a> |
<?php else: ?>
<?php echo $page; ?> |
<?php endif; ?>
<?php endforeach; ?>
</div>
<!-- Next page link -->
<?php if (isset($this->next)): ?>
<a id="next" href="<?php echo $this->url(array('page' => $this->next)); ?>" >
Next >
</a>
<?php else: ?>
<span id="next" class="disabled">Next ></span>
<?php endif; ?>
</div>
<?php endif; ?>
我想,因爲最後一頁上的下一個頁面選擇被禁用時,打到最後,將停止頁。爲什麼它會一直重複加載最後一頁,我該如何阻止它發生?
編輯:
我增加了一個,如果檢查回調函數,以試圖阻止一段時間後的滾動,通過這個問題jQuery InfiniteScroll plugin loads the last page over and over啓發。
//See if this is the last page
if(curPage >= pages){
alert("Infinite scroll is paused.");
$('#grid').infinitescroll('pause');
}
其中頁面定義爲最後一頁可用,curPage是當前頁面,每次調用增加。該檢查工作完美的一點,但我改變了一些東西,我不知道是什麼,現在由於某種原因,現在我得到了錯誤$("#grid").infinitescroll is not a function $('#grid').infinitescroll('pause');
我不知道如何無限滾動是不是一個函數在那時顯然必須是爲了讓JavaScript擺在首位。我怎樣才能擺脫這不是一個功能錯誤?
你應該在這裏考慮答案:http://stackoverflow.com/questions/13708722/infinitescroll-is-not-a-function-with-yii – Silentbang 2012-12-04 17:42:23
@silentbang你的錯誤是,有什麼干擾$別名,我的是因爲我試圖使用暫停功能來阻止它加載額外的頁面,而不是讓後端在無效頁面上投擲404。 – jaimerump 2012-12-04 21:46:42