我购买了一个引导模板,并且一直在尝试将其集成到我的 Rails 应用程序中。
我在无序列表中有一些按钮:
<ul class="filter-nav">
<li class="active"><a data-id="all" href="">All</a></li>
<% @categories.each do |category| %>
<li><a data-id="<%= category.name %>" href=""><%= category.name %></a></li>
<% end %>
</ul>
单击哪个是排序图像:
<ul class="thumbnails" id="thumbnails">
<table>
<% @designs.each_with_index do |d, i| %>
<% strcategory = Category.find(d.category) %>
<% if i % 4 == 0 %>
<tr>
<% end %>
<td>
<li class="span3" data-id="<%=i+1%>" data-type="<%= strcategory.name %>">
<a href="<%=d.image_url.to_s%>" class="thumbnail">
<img src="<%=d.image_url(:thumb).to_s%>" alt="<%= d.name %>" />
<span class="caption"><i class="icon-plus-sign"></i></span>
</a>
<% if current_user %>
<%= link_to 'edit', edit_design_path(d) %> | <%= link_to 'delete', d, method: :delete, data: { confirm: 'Are you sure?' } %>
<% end %>
</li>
</td>
<% if i % 4 == 3 %>
</tr>
<% end %>
<% end %>
</table>
</ul>
当我单击一个按钮时,我收到此错误: Uncaught TypeError: Object [object Object] has no method 'quicksand' on Photographer.js 文件(在第一行):
$thumbnails.quicksand($filteredData, {
duration: 800,
easing: 'easeInOutQuad'
}, function() {
Shadowbox.setup("a.thumbnail");
});
$('.filter-nav li').removeClass('active');
$(this).parent().addClass('active');
return false;
});
我在 assets/javascripts 文件夹中包含 jquery.quicksand.js(版本 1.2.2)。其他人也有类似的问题,解决方案是删除 jQuery 的第二个副本。我不确定我是否包含第二个 jQuery 文件,至少我的资产中没有。只是 jquery.quicksand.js 和 jquery.easing.js。好吧,我尝试删除这两个文件,但这并没有解决问题(如果这是我应该做的)。
这也是我的gemfile,仅供记录:
gem 'rails', '4.0.2'
gem 'sqlite3'
gem 'sass-rails', '~> 4.0.0'
gem 'uglifier', '>= 1.3.0'
gem 'coffee-rails', '~> 4.0.0'
gem 'jquery-rails'
gem 'turbolinks'
gem 'jbuilder', '~> 1.2'
gem 'bootstrap-sass', '~> 2.3.2.2'
gem 'devise'
gem 'figaro'
gem 'simple_form'
gem 'carrierwave'
gem 'rmagick'
gem 'thin'
让我知道您是否有任何错误的线索或是否需要任何其他信息。感谢您为我查找此内容所付出的努力。