我已经为Dropdown菜单编写了一个Jquery。 它工作正常,但是当我点击" li"它打开很好,但是没有在选择的李类上添加css ..
Jquery的:
$(".leftnav ul li").click(function () {
$(this).siblings().find('ul').slideUp(400);
$(this).find('ul').slideDown(400);
$(this).find('ul').addClass('activeclass');
$(this).find('.leftnav ul li').addClass('activeclass1');
});
HTML:
<div class="leftnav left">
<ul>
<li><a href="javascript:;">Dashboard</a></li>
<li><a href="javascript:;">Catagories</a>
<ul class="dropdown">
<li><i class="fa fa-angle-double-right left color iconpad"></i> <a href="#">Add Category</a></li>
<li><i class="fa fa-angle-double-right left color iconpad"></i><a href="#">Manage Catagories</a></li>
</ul>
</li>
<li><a href="javascript:;">Portfolio</a>
<ul class="dropdown">
<li><i class="fa fa-angle-double-right left color iconpad"></i><a href="#">Add Portfolio</a></li>
<li><i class="fa fa-angle-double-right left color iconpad"></i><a href="#">Manage Portfolio</a></li>
</ul>
</li>
</ul>
</div>
任何人都可以让我知道我该怎么做?
提前致谢。
答案 0 :(得分:3)
我认为你最后一行是错误的,因为你正在寻找$(this)
的.leftNav类后代。如果是这样,这应该更适合你
$(".leftnav ul li").click(function () {
$(this).siblings().find('ul').slideUp(400);
$(this).find('ul').slideDown(400);
$(this).find('ul').addClass('activeclass');
$(this).addClass('activeclass1');
});
答案 1 :(得分:2)
从您的示例看,您正在进行额外的查找。
$(".leftnav ul li").click(function () {
$(this).siblings().find('ul').slideUp(400);
$(this).find('ul').slideDown(400);
$(this).find('ul').addClass('activeclass');
$(this).addClass('activeclass1'); // Removed "find('.leftnav ul li')"
});