我有一个手风琴菜单,每个菜单标题都有一个小箭头 img,当菜单向下和向上滑动时会发生变化。
这是到目前为止的代码:
$(document).ready(function() {
$("div.menu_body").hide();
$("#menuheader div.menu_head div.detailsPanel").toggle(function() {
$(this).addClass("detailsPanelSelected").parent(this).next("div.menu_body").slideToggle(300).siblings("div.menu_body").slideUp("slow");
},
function() {
$(this).removeClass("detailsPanelSelected").parent(this).next("div.menu_body").slideUp("slow");
}
);
当我一次切换一个菜单项时,这很好用。
但是假设我展开一个菜单项,然后单击另一个菜单标题。发生的情况是第一个菜单项向上滑动,而新单击的菜单项向下滑动,就像预期的那样。但箭头 gif 不会在向上滑动的菜单上变回。发生这种情况是因为它的切换功能仍处于第一个状态,如果我再次单击它,从而删除“detailsPanelSelected”类,所发生的只是图像变回。查看代码,这是意料之中的。
所以我的问题是,当单击另一个菜单标题时,如何删除菜单项“detailsPanelSelected”?我可以以某种方式重置挂起的切换功能吗?