我有一个下拉价目表,细分为小块以便于查看,提供多种服务,一些服务细分为子类别,用户可以单击带有向下箭头的按钮,单击按钮的另一级子类别是slideToggle 显示。箭头按钮保留在底部,以便他们可以在准备好时隐藏子类别。
我希望将箭头从隐藏子类别时的向下更改为显示它们时的向上。我已经准备好了一个包含两个箭头状态的图像png
,我只需要一个命令/一组命令,这些命令将在隐藏/显示子类别时在状态之间切换箭头。
箭头位于此 HTML 中,作为.arrows
div 的背景图像。
<div class="morebutton" id="firstarrow">
<div class="arrows">
</div>
</div>
这是CSS:
.morebutton{
width:220px;
height:8px;
border:outset 1px #ddd;
/*margin-bottom:5px;*/
margin-left:auto;
margin-right:auto;
margin-top:0px;
background:#ddd;
border-radius:25px;
cursor:pointer;
overflow:hidden;
}
.morebutton:hover{
background:#eee;
height:15px;
}
.arrows{
width:20px;
height:15px;
margin:0px auto;
background:url(images/morearrows.png) no-repeat 0px 0px;
}
这是元素上的当前 jQuery:
$("#firstarrow").click(function(){
$("#londonmore").slideToggle(100);
});
//this reveals the sub-categories in a table called #londonmore
这是我尝试过的(在上面的函数中):
$(this).toggle(
function(){
$(".arrows").css({"background-position":"0px"});
},
function(){
$(".arrows").css({"background-position":"10px"});
});
我尝试过处理背景位置变化的数量,但它所做的只是稍微移动箭头,它不会在第一次点击时移动它,也不会移动到我想要的位置,它也没有继续隐藏子类别。