Ich bin ein grundlegendes Dropdown-Menü erstellen, und wenn Sie auf einen Menüpunkt klicken, möchte ich sicherstellen, dass alle geöffneten Dropdown-Menüs zuerst schließen.Menü toggle funktioniert nicht bei der Verwendung nicht (dieser)
Mit not (this) in der zweiten Zeile kann toggleClass aktiviert, aber deaktiviert werden.
Was fehlt mir?
$('.nav-dropdown').click(function(){
$('.nav-dropdown-content').not(this).addClass('hide');
$('.nav-dropdown-content', this).toggleClass('hide');
});
Hier ist der HTML
<div class="nav_wrapper">
<ul>
<li class="nav-dropdown">
Menu Item 1 <span>▾</span>
<div class="nav-dropdown-content">
<a href="#">Sub Menu 1</a>
<a href="#">Sub Menu 2</a>
</div>
</li>
<li class="nav-dropdown">
Menu Item 2 <span>▾</span>
<div class="nav-dropdown-content">
<a href="#">Sub Menu 3</a>
<a href="#">Sub Menu 4</a>
</div>
</li>
</ul>
</div>
verwenden können, kann nicht Du drehst sie einfach aus und drehst sie dann um wieder an? '$ ('.nav-dropdown-content'). addClass ('hide'); $ ('. nav-dropdown-content', this) .removeClass ('hide'); ' – Shanimal
Bitte zeigen Sie die relevante HTML-Struktur an. 'this' ist nicht das, was du willst – charlietfl
Sogar addClass ('hide') statt nicht (dies) scheint den Toggle zu knacken – ok1ha