在打开手风琴项目后,我试图在下次单击时关闭手风琴。考虑到我目前设置的方式(下),实现此目的的最佳方法是什么?我的代码如下:
HTML:
<div class="faq-accordion">
<section id="1">
<h4><a href="#1">Accordion Title</a></h4>
<div>
<p>Accordion Content</p>
</div>
</section>
</div>
Javascript:
$(document).ready(function(){
$('.faq-accordion h4').click(function(){
if( $(this).next().is(':hidden') ) {
$('.faq-accordion h4').removeClass('faq-active').next().slideUp();
$(this).addClass('faq-active').next().slideDown();
}
return false;
});
});
答案 0 :(得分:1)
您可以这样做:
(function($) {
var accordions = $('.accordion .content').hide();
$('.accordion .header > a').click(function() {
accordions.slideUp();
if($(this).parent().next().is(':visible')) {
$(this).parent().next().slideUp();
} else {
$(this).parent().next().slideDown();
}
return false;
});
})(jQuery);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="accordion">
<div class="header"><a href="">Accordion title 1</a></div>
<div class="content">Content 1</div>
<div class="header"><a href="">Accordion title 2</a></div>
<div class="content">Content 2</div>
<div class="header"><a href="">Accordion title 3</a></div>
<div class="content">Content 3</div>
</div>
如果您有任何疑问,请告诉我。
希望对您有帮助。