特定のグループの各製品を一覧表示する製品ページがあり、メイン画像をクリックしたときに個々の製品の製品表示ページに移動する代わりに、画像をcss3ライトボックスにロードしたいと思います。
_product.html.erbの私のコードは次のとおりです。
<% if products.any? %>
<ul id="products" class="inline product-listing" data-hook>
<% products.each do |product| %>
<% if product.on_display? %>
<div class="grid_1">
<li id="product_<%= product.id %>" class="columns product three <%= cycle("alpha", "secondary", "", "omega secondary", :name => "classes") %>" data-hook="products_list_item" itemscope itemtype="http://schema.org/Product">
<div class="main-image" type="button" value="Zoom In Modal Window" class="popup_button" data-type="zoomin" data-productid="<%= product.id %>">
<%= large_image(product, :itemprop => "image", :class => "product-image", :class => "popup_button") %>
</div><!-- main-image-->
**<div class="overlay-container">
<div class="product-container zoomin">
<span class="close">X</span>
<%= product %>
<%= large_image(product, :itemprop => "image", :class => "product-image") %>
</div><!-- window-container zoomin -->
</div><!-- overlay-container -->**
<div class="prod_info_box">
<%= link_to truncate(product.name, :length => 50), product, :class => 'info', :itemprop => "name", :title => product.name %>
<span class="price selling" itemprop="price"><%= product.price_in(current_currency).display_price %></span>
ライトボックスコードは太字で示されています。main-imagedivで使用されているのと同じ'product'変数を使用して、選択した単一の製品をライトボックスにプルしていますが、ここで使用すると、複数の製品をプルして1つの製品の上に重ねているようです。別。そして、それは正しい製品オブジェクトを引っ張っていません。「TheTemptress」をクリックすると、グリッドの右下にある製品である「TheTim」が表示されます。私が同じ「製品」を使用しているので、なぜこれを行うのか考えてください
<% products.each do |product| %>
ご協力いただきありがとうございます!
PSこれがコーヒースクリプトです:
$(document).ready ->
$(".popup_button").click ->
type = $(this).attr("data-type")
$(".overlay-container").fadeIn ->
window.setTimeout (->
$(".product-container." + type).addClass "product-container-visible"
), 100
$(".close").click ->
$(".overlay-container").fadeOut().end().find(".product-container").removeClass "product-container-visible"