0

私は自分のページに無限のページ設定を実装しようとしています。私は2日間、さまざまな方法を試してきましたが、うまく機能しないようです。私はこのブログ投稿から提案されたセットアップが好きでしたが、それを機能させることができないようです:http: //pedromtavares.wordpress.com/2011/05/08/endless-page-scrolling-with-rails-3-and- jquery /

Ryan Batesのスクリーンキャストも試しましたが、実装できませんでした...

私は次のことを試しました:

インストールされたプラグイン

rails plugin install git://github.com/pedromtavares/endless_scroll_example.git

私のコントローラーの家を変更しました:

def index

last = params[:last].blank? ? Time.now + 1.second : Time.parse(params[:last])
@feeds = Feed.input(last)

end

新しいメソッド「input」で「Feed-model」を変更しました。

def self.input(last)
   self.where("created_at < ? ", last).order('created_at desc').limit(5)
end

インデックスを変更しました

<% content_for :scripts do %>
  <%= javascript_include_tag 'endless' %>
<% end %>


<%unless @feeds.blank?%>
<ul class='list' last="<%=@feeds.to_a.last.created_at%>">
<%= render :partial => 'feeds', :collection => @feeds%>

<div id='infinite-scroll'></div>
</ul>
<%end%>

私の部分的な_feeds.html.erbは次のようになります(テキストを入力するだけです:):

<%=feeds.title%>
jfjh
</p>
<p>
    jfjh
    </p>
    <p>
        jfjh
        </p>
        <p>
            jfjh
            </p>
            <p>
                jfjh
                </p>

                 <br>
<hr>

pedromtavaresの好意で私の新しいjavascript(endless.js)を追加しました

$('ul').endlessScroll({
  fireOnce: true,
  fireDelay: 500,
    ceaseFire: function(){
      return $('#infinite-scroll').length ? false : true;
    },
    callback: function(){
      $.ajax({
          url: '/home',
          data: {
              last: $(this).attr('last')
          },
          dataType: 'script'
        });
    }
});

私の最終的なJavaScriptファイルは次のようになります。

<% unless @feeds.blank? %>
    $('.endless_scroll_inner_wrap').append("<%=escape_javascript(render :partial => 'feeds', :collection => @feeds)%>");
    $('ul').attr('last', '<%=@feeds.to_a.last.created_at%>')
<% else %>
    $('#infinite-scroll').detach();
<% end %>

エラーは発生しませんが、無限スクロールも発生しません。配列から最初の投稿を取得しますが、残りは取得しません。私が何を間違っているのか理解できず、今までにすべてを試したように感じます...助けてください!

4

1 に答える 1