我目前正在建设一个网站,其中包含一个 accordion 菜单。
我的问题是以下,当我点击所需的项目,必须折叠它确实折叠,但它回到未折叠后,它折叠。
$(document).ready(function(){
$(".set > a").on("click", function(){
if($(this).hasClass('active')){
$(this).removeClass("active");
$(this).siblings('.content').slideUp(200);
$(".set > a i").removeClass("fa-minus").addClass("fa-plus");
}else{
$(".set > a i").removeClass("fa-minus").addClass("fa-plus");
$(this).find("i").removeClass("fa-plus").addClass("fa-minus");
$(".set > a").removeClass("active");
$(this).addClass("active");
$('.content').slideUp(200);
$(this).siblings('.content').slideDown(200);
}
});
});
Here is the code (jsfiddle)
这段代码以前工作得很好,但由于某种原因,它坏了,不再工作了。
我希望有人能帮我。
1条答案
按热度按时间nvbavucw1#
我认为在某个地方沿着你已经交换了你的 accordion 开始打开(即删除了最初隐藏它的样式),所以你的
else
中的以下行既打开又关闭它:如果您在开始时打开了accordion,则需要从链接上的活动类开始:
第一次
我还清理了您的jQuery并修复了您的
else