【发布时间】:2014-07-28 16:08:11
【问题描述】:
闲逛了 Ryan Bates 的无尽滚动教程,但不明白为什么它不起作用;/部分不更新
localfeeds/show.html.erb
<div class="row">
<div class="col-md-8">
<div id="infinite-table">
<%=render :partial => 'scribbles/scribbles', :locals => {:scribbles => @scribbles}%>
</div>
</div>
</div>
<%= paginate @scribbles %>
localfeeds.js.coffee
jQuery ->
if $('.pagination').length
$(window).scroll ->
url = $('.pagination .next a').attr('href')
if url && $(window).scrollTop() > $(document).height() - $(window).height() - 50
alert("test2")
$('.pagination').text('Fetching more products...')
$.getScript(url)
$(window).scroll()
localfeeds/show.js.erb
// Append new data
$('#infinite_table').append('<%= j render(:partial => 'scribbles/scribbles', :scribbles => @scribbles) %>');
<% if (@scribbles.current_page < @scribbles.num_pages) %>
$('.pagination').replaceWith('<%= j paginate(@scribbles) %>');
<% else %>
$('.pagination').remove();
<% end %>
请帮忙
Safari HTML 渲染
【问题讨论】:
-
通过将
console.log([string or param])放在 JS/CS 文件的开头和结尾来确保您的 JS 正在加载和运行。它们应该出现在您的 Firefox/Firebug 或 Chrome 控制台中。还要检查控制台是否有任何 JS 错误。你能发布渲染的标记吗? -
localfeeds.js.coffee 已加载,将 alert('test') 移至顶部并弹出并出现在 firebug 中。将 console.log([string or param]) 添加到 js 会引发错误,这是我在 firebug 中遇到的唯一 js 错误。
-
抱歉,我的意思是将 [string or param] 替换为字符串,例如“Woo!成功了!”或像 $('#infinite_table') 之类的参数。如果您将复杂对象放入 console.log,您将能够在控制台中导航它。
-
仍然没有得到任何指向问题的错误
-
如果您发布呈现的标记,我可以查找您可能遗漏的任何 JQuery 选择器错误。同时,您可以使用 console.log 和控制台作为分析代码的工具。你知道 localfeeds/show.js.erb 是否正在执行吗?您也可以在那里使用console.log。或者如果您必须发出警报;)
标签: javascript ruby-on-rails ruby-on-rails-3 kaminari railscasts