бесконечная страница jquery в rails 3 с will_paginate

#jquery #ruby-on-rails-3 #will-paginate

#jquery #ruby-on-rails-3 #будет разбиваться на страницы

Вопрос:

Кто-нибудь знает, как я могу перейти к бесконечной странице с помощью jquery и will_paginate в rails 3? Я перепробовал так много способов, но у меня это никогда не работало.

Ответ №1:

Смотрите Railscast #114 Бесконечная страница

Вы должны быть в состоянии заставить ее работать с Rails 3 с минимальными изменениями (если таковые имеются).

Ответ №2:

Ваш endless-page.js файл будет выглядеть примерно так

    var currentPage = 1;
   var autoloading = false;
   if( total_number_of_paginaion_pages > 1) {
       autoloading = true;
     }

function checkScroll() {
  if (autoloading amp;amp; 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;
}
  

Ответ №3:

лучшим вариантом для реализации бесконечной разбивки на страницы будет использование will_paginate / kaminari gem с jquery.

есть хороший блог о том, как реализовать бесконечную страницу, и, надеюсь, он ответит на ваш вопрос.взгляните

http://www.idyllic-software.com/blog/endless-page-using-jquery-and-will_paginate/

Комментарии:

1. хороший, но похожий на выбранный ответ