我想從父級刪除「打開」類,當我關閉切換,但是我下面的代碼不工作。它添加了「打開」類,但在關閉時不會刪除。任何人都可以看到我要去哪裏錯了嗎?jquery從父div中刪除類
$('.sub-menu').hide();
$('.toggle').click(function() {
if (!$(".sub-menu").is(":visible"))
$(this).addClass("open");
$(this).next('.sub-menu').slideToggle(function() {
if (!$(".sub-menu").is(":visible"))
$(this).parent('.toggle').removeClass("open");
});
});
更新:「nav」的HTML在請求下面。
<dd class="toggle open">
<a id="navProducts">Products</a>
</dd>
<div class="sub-menu" style="display: block;">
<dd class="sub-menu-option">
<a id="navBluray" href="nhdadmin/products/bluray">Blu-ray</a>
</dd>
<dd class="sub-menu-option">
<a id="navXbox" href="nhdadmin/products/xbox">Xbox</a>
</dd>
<dd class="sub-menu-option">
<a id="navPlayStation" href="nhdadmin/products/playstation">PlayStation</a>
</dd>
你能給我們一些html的工作,請? – pythonian29033
這可能是問題嗎? http://jqueryminute.com/jquery-parent-vs-parents/ –
對我來說,由於您使用.next()來定位.sub菜單,它不是.toggle的子元素,而是一個兄弟。但它只是猜測真的沒有任何HTML – ninja