javascript - 动态 javascript 悬停在 Rails 上?

标签 javascript ruby-on-rails

我有一个包含许多照片的索引 View 。 我想对每张照片制作悬停效果,但我的代码仅将效果放在第一张照片上,因为它没有 id。

我不知道如何处理。请问有什么帮助吗?

<script>
  $(".product-image").on("mouseover", function(){
    $("#product-overlay").show();
  });
  $(".product-image").on("mouseleave", function(){
    $("#product-overlay").hide();
  });
</script>

这将每次在同一个项目上添加效果(显示叠加),并且我需要每个项目都有独特的效果。

<li id="product_<%= product.id %>">
        <div class="product-image">
          <%= link_to small_image(product, :itemprop => "image"), url, :itemprop => 'url' %>
          <div id="product-overlay">More</div>
        </div>
      <% end %>
</ul>

最佳答案

问题很简单,您在 $("#product-overlay").show() 中引用了一个 id 并隐藏。

试试这个:

$('.product-image').on('mouseover', function() {
  $(this).find('.product-overlay').show();
});

然后将您的 View 更改为:

<li id="product_<%= product.id %>">
  <div class="product-image">
    <%= link_to small_image(product, :itemprop => "image"), url, :itemprop => 'url' %>
    <div class="product-overlay">More</div>
  </div>
</li>    

关于javascript - 动态 javascript 悬停在 Rails 上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28182135/

相关文章:

javascript - 错误消息 : redirect_uri URL is not properly formatted error

javascript - 具有动态生成元素的 jQuery

ruby-on-rails - Windows 与 Linux 中的 Rails

ruby-on-rails - 我一直在使用 Authlogic,但现在需要删除它的所有痕迹。我需要做什么?

javascript - 如何修复仅在 wordpress 网站上不起作用的 javascript onmousemove

javascript - 如何使用 html/css/js/在 2 个 Canvas 之间切换可见性?

javascript - 单行 Javascript 方法查找具有特定文本的项目然后调用单击

ruby-on-rails - 寻找更快的 ActiveRecord 查询 (Ruby on Rails)

MySQL order by optimization with joins and wheres

ruby-on-rails - Rails 3 获取嵌套记录