jquery砌体不渲染

时间:2012-12-07 04:05:48

标签: jquery ruby-on-rails-3 jquery-plugins jquery-masonry

我正在使用Jquery插件Masonry在我的Rails应用程序上显示我的图像。我似乎无法让它发挥作用。我把我的Masonry脚本放在页面本身。我已经包含了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>

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

2 个答案:

答案 0 :(得分:0)

你下载了jquery ruby​​ gem吗?

如果没有。这可能是你的问题

将此添加到您的gem文件

gem'jquery-rails'

保存并运行bundle install

答案 1 :(得分:0)

听起来您需要花更多时间阅读资产管道手册。根据你在这里所说的,你应该阅读一些内容:

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

  2. 如果您将一个javascript文件放在assets / javascripts下,则无需使用javascript_include_tag。很可能你有类似的东西&lt;%= javascript_include_tag“application”%&gt;在您的布局中自动包含所有JavaScript文件。 http://guides.rubyonrails.org/asset_pipeline.html#asset-organization

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