我需要一點jQuery的幫助。如何獲得單獨的模式彈出窗口?
我有一個單獨的產品分區(.productsWrap)在頁面上顯示所有隱藏的信息部分。我們的想法是,當a.activator特定產品被點擊半透明的覆蓋(.productsOverlay)下落,並隨後由該特定產品(.productsPopBox)的信息部分。在頁面上可能有10個.productsWrap,所以我只想讓其中一個彈出窗口一次顯示。
總之,如果有人點擊給定產品(.productsWrap)然後.productsOverlay和.productsPopBox將僅出現在該產品a.activator。
的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
我第一次嘗試排序工作。它看起來不錯,因爲彈出窗口實際上做了些什麼,效果看起來不錯。但是,它導致所有的.productsOverlay和.productsPopBox所有.productsWrap同時下降。
$('.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');
});
});
如果我理解正確,你應該看看jQuery通知插件,如[noty](http://needim.github.io/noty/)。 – excentris 2013-04-21 17:45:36
感謝您的回答,但我希望能夠在沒有插件的情況下做到這一點。 對於一個實際的功能的例子,我已經基於我的工作在以下[鏈接] http://stackoverflow.com/questions/10444694/hide-show-toggle-separate-divs-with-the-same-class-名稱 問題是,該示例不適用於jQuery 1.9.1 – 2013-04-21 18:17:37
好吧,現在我明白你真正想要完成的。你打算使用jQuery UI嗎?如果是這樣,看看[手風琴](http://jqueryui.com/accordion/)。 – excentris 2013-04-21 18:26:46