グリッドに一連の「製品」div があり、それぞれがクリック可能です。いずれかをクリックすると、対応する「製品情報」DIV が下にスライドして、対応する製品情報が表示されます。ある程度は機能していますが、いくつかの問題があります。
1セットの情報が表示されているときに別の「製品」divをクリックすると、現在の情報が非表示の状態になり、製品情報が切り替わり、新しい情報が表示されるようにするにはどうすればよいですか. わかる?
以下のコードが意味をなさない場合、直接リンクはこちら
これは非表示情報の HTML です。クラス「selected_show」は、「display:none;」でスタイル設定されています。始めること:
<section>
<div class=selected_show>
<div>
<div class="product_info grassone piece_info">
<img src="./images/detail_info/astronomical.jpg">
<div>
<p>Short description of the piece...</p>
</div>
</div>
</div>
<div>
<div class="product_info competitive piece_info">
<img src="./images/detail_info/astronomical.jpg">
<div style="background:red;">
<p>Short description of the piece...</p>
</div>
</div>
</div>
<div>
<div class="product_info magpie piece_info">
<img src="./images/detail_info/astronomical.jpg">
<div style="background:blue;">
<p>Short description of the piece...</p>
</div>
</div>
</div>
</div>
</section>
ここで情報が選択されます。
<section>
<div class="piece woodcut">
<a href="grassone" class="showinfo"><p>GRASSONE</p></a>
</div>
<div class="piece woodcut">
<a href="competitive" class="showinfo"><p>COMPETITIVE</p></a>
</div>
<div class="piece woodcut">
<a href="magpie" class="showinfo"><p>MAGPIE</p></a>
</div>
</section>
これは、効果のスクリプトです。
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script type="text/javascript">
$('a.showinfo').click(function(e){
e.preventDefault();
$("html, body").animate({ scrollTop: 100 }, "slow");
$(".selected_show").slideToggle();
var a_href = '.'+ $(this).attr('href');
$('.product_info').hide();
$(a_href).show();
});
</script>
アイデア?