我有一个移动菜单,当用户单击类别为“ open”的跨度时,下一个页脚菜单手风琴将打开。但是,当用户单击锚链接“ level-1” Men时,它也会打开。 我现在想做的是,当用户单击Men时,我想使用jquery查找NEXT页脚菜单手风琴并将其保持为display:none(这是包含2级锚点标记的父div )。我知道我必须使用jquery的next()或find()方法,但是我不确定该怎么做。有人可以帮我吗?
function mobileMainNav() {
$('a.level-1.direct').click(function(e) {
window.location = $(this).attr('href');
});
}
mobileMainNav();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="mobile-menu" class=" footer-menu-accordion ">
<div class="dropdown-container ">
<a class="level-1 direct">Men</a>
<span class="open">img</span>
</div>
<div class="footer-menu-accordion ">
<a class="level-2 "></a>
<ul></ul>
<a class="level-2 "></a>
<ul></ul>
<a class="level-2 "></a>
<ul></ul>
</div>
</div>
我这样做是为了当我单击级别1时,我被定向到我网站的“男装”部分。这可以正常工作,但是当我选择级别1时,我不希望打开下一个下拉列表,而当前它会这样做。所以我知道我需要在此函数中添加更多的jquery来做到这一点,但我不确定如何成为jQuery的新手。先感谢您!
答案 0 :(得分:0)
我不确定您是否要为级别1的锚标记获取最近的页脚...如果是这样,请尝试以下方法:
function mobileMainNav() {
$('a.level-1').click(function(e) {
var nearestFooter = $(this).parent().siblings('div.footer-menu-accordion');
console.log(nearestFooter[0]);
});
}
mobileMainNav();
<div id="mobile-menu" class="footer-menu-accordion">
<div class="dropdown-container">
<a class="level-1">Men</a>
<span class="open">img</span>
</div>
<div class="footer-menu-accordion">
<a class="level-2"></a>
<ul></ul>
<a class="level-2"></a>
<ul></ul>
<a class="level-2"></a>
<ul></ul>
</div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
您也没有类(.direct)的元素