[英]How to add class for expanded menu and remove class after collapse
I have tried to make dynamic menu list, and I have main menu and submenu, each item has submenu provided (+ ) sign before item name. 我尝试制作动态菜单列表,并且有主菜单和子菜单,每个项目在项目名称之前都有提供(+)的子菜单。 I have used addClass to add( - ) when I double click on the menu item and it works, however when I double click again on the item will collapse but ( - ) sign will not change to ( + ).
当我双击菜单项时,我已经使用addClass来添加(-),但是它可以工作,但是当我再次双击该菜单项时,它会折叠,但是(-)符号不会更改为(+)。 My question, how to remove ( - ) sign when the menu collapse by using removeClass and change it to ( +) which is the official ?
我的问题是,如何使用removeClass在菜单折叠时删除(-)符号并将其更改为官方的(+)?
Thanks a lot. 非常感谢。
CSS: CSS:
.openSign{
background: url('images/open.png')no-repeat 0px 0px;
}
.closeSign{
background: url('images/close.png')no-repeat 0px 0px;
}
HTML: HTML:
<ul > 1
<li class="navL1 openSign"> 1.1
<ul class="navL2 openSign">
<li class="navL2 openSign"> 1.1.1
<ul>
<li class="navL3"><a>1.1.1.1 </a> </li>
<li class="navL3">1.1.1.2 </li>
<li class="navL3">1.1.1.3</li>
</ul>
JavaScript: JavaScript:
<script type="text/javascript">
$(document).ready(function() {
$(".navL2, .navL3").hide();
$(".navL1").dblclick(function(e){
$(this).find('.navL2').slideToggle();
$(this).addClass("closeSign");
});
});
</script>
有一个toggleClass
就像有一个slideToggle
。
If you use slideToggle
, you should use toggleClass()
as well (instead of addClass
): 如果使用
slideToggle
,则还应该使用toggleClass()
(而不是addClass
):
$(this).toggleClass("closeSign")
.find('.navL2').slideToggle();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.