我想检查具有类 nav-title 的元素是否也有一个活动类,如果为真,则在具有 nav-title 类的元素下方向下滑动下一个元素(具有 .sub-nav 类)。
否则如果没有nav-title类的元素有active类,找到第一个.sub-nav类的元素,显示出来,往上走,把active类添加到.nav-title
具有单击功能的下一个代码仅适用于 fint,它只是第一个没有的.. 我尝试在 html 文档本身中添加活动类,但是第一个元素和第二个元素都得到了类活动并且没有子导航滑下来。
$(document).ready(function() {
if ($("#nav").find("nav-title").hasClass("active")) {
$(this).next(".sub-nav").slideDown("fast");
} else {
$("#nav").find(".sub-nav:first").show().prev().addClass("active");
}
$("#nav").on("click", ".nav-title", function() {
$('.active').removeClass("active").next(".sub-nav").stop().slideUp("fast");
$(this).toggleClass("active");
$(this).next(".sub-nav").stop().slideDown("fast");
});
});
有人可以帮忙吗?
顺便说一下,我的 html 看起来像这样:
<ul id="nav">
<li class="nav-title">Title 1</li>
<ul class="sub-nav">
<li><a href="#">link 1</a></li>
<li><a href="#">link 2</a></li>
</ul>
<li class="nav-title active">Title 2</li>
<ul class="sub-nav">
<li><a href="#">link 1</a></li>
<li><a href="#">link 2</a></li>
</ul>
</ul>
我的代码可能有点乱,我只是在我们说话的时候学习 jquery。
哎呀!我做了一个小例子: http: //fiddle.jshell.net/kcWA8/2/