有没有人知道如何在rails 3中使用jquery和will_paginate进行无限页面?我已经尝试了很多方法,但它从来没有为我工作过。
答案 0 :(得分:1)
请参阅Railscast #114 Endless Page
你应该能够使用Rails 3进行最少的修改(如果有的话)。
答案 1 :(得分:1)
你的endless-page.js文件看起来像这样
var currentPage = 1;
var autoloading = false;
if( total_number_of_paginaion_pages > 1) {
autoloading = true;
}
function checkScroll() {
if (autoloading && nearBottomOfPage()) {
currentPage ++;
autoloading = false;
$.ajax( {
url: window.location,
data: 'page=' + currentPage,
beforeSend: function() {
$('.loading-info').show()
},
complete: function(){
$('.loading-info').hide()
},
success: function(data){
eval(data);
}
});
}
}
function nearBottomOfPage() {
return scrollDistanceFromBottom() < 150;
}
function scrollDistanceFromBottom(argument) {
return $(document).height() - ($(window).height() + $(window).scrollTop());
}
$(window).bind('scroll', function (){
checkScroll();
});
在你的js.erb文件中看起来像这样
$('.results-center').append('<%=escape_javascript(render :partial => '/search/search_result') %>');
if(! pagination_last_page) {
autoloading = true;
}
答案 2 :(得分:1)
实现无限分页的最佳选择是使用will_paginate / kaminari gem和jquery。
有一个关于如何实现无尽页面的好博客,希望能回答你的问题。看看
http://www.idyllic-software.com/blog/endless-page-using-jquery-and-will_paginate/