ちょっとした jQuery のヘルプが必要です。ページに多数の個別の製品 div ( .productsWrap ) が表示されており、すべて非表示の情報セクションがあります。特定の製品のa.activatorをクリックすると、半透明のオーバーレイ ( .productsOverlay ) がドロップダウンし、その特定の製品 ( .productsPopBox )の情報セクションが続きます。ページには.productsWrapが 10 個ある可能性があるため、一度に 1 つのポップアップのみを表示する必要があります。
つまり、誰かが特定の製品 (.productsWrap) の.activatorをクリックすると、 .productsOverlayと.productsPopBoxがその製品に対してのみ表示されます。
HTML マークアップは次のとおりです。
<section class="productsWrap">
<section class="blueHeader"><h2></h2></section>
<article>
<div class="productsText">
<a class="activator">Full service details</a>
</div>
</article>
</section>
<div class="productsOverlay overlay" style="display:none;"></div>
<div class="productsPopBox popBox" >
<h2></h2><span class="close">x</span>
</div>
そして、これはjQueryでの私の悪い試みです: jsfiddle
私の最初の試みはうまくいきました。ポップアップが実際に何かを行い、効果が良さそうに見える限り、それは良さそうに見えました。ただし、これにより、すべての .productsWrap のすべての.productsOverlayおよび.productsPopBoxが同時にドロップダウンしました。
$('.activator').click(function(){
$('.productsOverlay, .caseStudiesOverlay').fadeIn('fast',function(){
$('.productsPopBox, .caseStudiesPopBox').animate({'top':'-150px'},500);
});
});
$('.productsOverlay, .caseStudiesOverlay, span.close').click(function(){
$('.productsPopBox, .caseStudiesPopBox').animate({'top':'-1000px'},500,function(){
$('.productsOverlay, .caseStudiesOverlay').fadeOut('fast');
});
});