基本上我有这个问题。我有一个手风琴,一次打开一个标题,我在添加标题右侧的打开/关闭图像时遇到问题。
到目前为止,我已经有了它,因此一旦您单击标题,它就会删除“打开”图像并为“关闭”图像切换另一个类。现在我基本上需要再次换掉这些类,以便如果您切换另一个标题,它会删除另一个图像并返回到原始图像。
这是我正在使用的代码。
JavaScript
<SCRIPT>
$("#accordion > li").click(function () {
$("#accordian li").removeClass("faq-header");
$(this).addClass("faq-header2");
if (false == $(this).next().is(':visible')) {
$('#accordion > ul').slideUp(250);
$('#accordion > ul').addClass('faq-header');
$(this).removeClass("faq-header");
}
$(this).next().slideToggle(300);
});
$('#accordion > ul:eq(0)').show();
</SCRIPT>
CSS
#accordion {
list-style: none;
margin-left:-38px;
}
#accordion ul:eq {
background-image:url(../img/faq-open.gif);
background-repeat:no-repeat;
background-position:right;
padding-right:20px;
}
#accordion li{
display: block;
background-color: #FFF;
font-weight: bold;
cursor: pointer;
}
.faq-header {
text-align:left;
background-image:url(../img/faq-close.gif);
background-repeat:no-repeat;
background-position:right;
margin-right:20px;
}
.faq-header2 {
text-align:left;
background-image:url(../img/faq-open.gif);
background-repeat:no-repeat;
background-position:right;
margin-right:20px;
}
#accordion ul {
list-style: none;
display: none;
}
#accordion ul li{
font-weight: normal;
cursor: auto;
background-color: #fff;
border-bottom:1px solid #999;
margin-left:-38px !important;
}
如您所见,我删除了一个课程并添加了另一个课程,$("#accordian li").removeClass("faq-header");
并添加了以下内容$(this).addClass("faq-header2");
但是我现在需要在它不再是选定的部分后删除.faq-header2
并重新添加。.faq-header
这对我来说似乎并不难,但我只是不知道如何编码。应该是我认为的基本 if 功能......