问题描述
||
有谁知道我如何在Rails 3中使用jquery和will_paginate实现无休止的页面?我已经尝试了很多方法,但是对我没有用。
解决方法
参见Railscast#114无限页面
您应该能够以最少的修改(如果有的话)使其与Rails 3一起使用。
, 您的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;
}
, 实现无限分页的最佳选择是将will_paginate / kaminari gem与jquery一起使用。
有一个关于如何实现无尽页面的好博客,希望可以回答您的问题。
http://www.idyllic-software.com/blog/endless-page-using-jquery-and-will_paginate/