0

我正在使用 Jquery 插件 Masonry 在我的 Rails 应用程序上显示我的图像。我似乎无法让它工作。我已将 Masonry 脚本放入页面本身。我已经包含了砌体插件以及 jquery.js 文件。我还在 application.js 文件中取消了 =jquery 的注释。我的 Masonry 插件文件位于 assets 文件夹中的 javascript 文件夹中。我的代码是 <%= javascript_include_tag "jQuery.js" %> <%= javascript_include_tag "jquery.masonry.min.js" %>

<%= render 'nav' %>
<div id = "jags_show">
<h1>Your Jags </h1>
<div id = "clear"></div>
<hr />
<% if @jags.empty? %>
<p> NO JAGS UPLOADED YET <p>
<% else %>
<% @jags.each do |j| %>
    <div id = "jags">
        <li id = "jagimage"><%= image_tag j.image_url(:thumb) %></li>
        <p id = "jagname"> <%= j.name %> </p>
        <div class="actions">
         <%= link_to "update", edit_jag_path(j) %> |
         <%= link_to "remove", j, :confirm => 'Are you sure?', :method => :delete %>
        </div>
    </div>
<% end %>
<% end %>
</div>
<script>
$(function(){

var $container = $('#jags_show');

$container.imagesLoaded( function(){
  $container.masonry({
    itemSelector : '#jagimage'
  });
});

});
</script>

无论我是否有脚本部分,我的网页都没有可见的变化。如果有人可以向我解释为什么会发生这种情况,将不胜感激。

4

2 回答 2

0

你下载了jquery ruby​​ gem吗?

如果不。那可能是你的问题

将此添加到您的 gem 文件中

宝石'jquery-rails'

保存并运行 bundle install

于 2012-12-07T04:35:07.063 回答
0

听起来您确实需要花更多时间阅读资产管道手册。根据您所说的,您应该阅读以下内容:

  1. 您不应该在 application.js 中“取消注释”任何内容。这些不是评论,它们是指令。 http://guides.rubyonrails.org/asset_pipeline.html#manifest-files-and-directives

  2. 如果您将 javascript 文件放在 assets/javascripts 下,则不需要使用 javascript_include_tag。您的布局中很可能有类似 <%= javascript_include_tag "application" %> 的内容,它会自动包含所有 javascript 文件。http://guides.rubyonrails.org/asset_pipeline.html#asset-organization

  3. 现代浏览器有很好的工具来检查加载到页面中的资产。Chrome、Safari 和 Firefox 都有很好的“检查工具”,可以显示与您的请求相关的网络流量。我建议在那里查看您的浏览器成功请求了哪些文件。

于 2012-12-07T04:38:16.170 回答