Hallo,
ich habe gerade ein Knoten im Hirn, den ich seit zwei Tagen einfach nicht entwirren kann.
Ich habe mir ein mobiles Offcanvas Menu erstellt, mit folgender Struktur:
Stufe 1:
Das funktioniert auch alles wunderbar. Nun benötigt man natürlich noch einen "Zurück-Button", und hier komme ich einfach nicht weiter.
Im Moment sammel ich per document.querySelectorAll alle "offcanvas-list" und entferne bei Klick auf den "Zurück-Button" "is-open".
Für Stufe 2 zurück auf Stufe 1 funktioniert das auch tadellos. Problem ist allerdings, dass ich dadurch natürlich auch von Stufe 3 direkt zu Stufe 1 springe anstatt nur auf Stufe 2.
Ich habe schon alle möglichen if Konstellationen durchgespielt, aber ich komme einfach auf keine Lösung.
Hat zufällig jemand eine Idee?
ich habe gerade ein Knoten im Hirn, den ich seit zwei Tagen einfach nicht entwirren kann.
Ich habe mir ein mobiles Offcanvas Menu erstellt, mit folgender Struktur:
Stufe 1:
Kategorien
Stufe 2:Kategorie 1
Kategorie 2
Kategorie 3
Stufe 3:Unterkategorie 1
Unterkategorie 2
Unterkategorie 3
Dabei wird bei Klick auf Kategorien, die Stufe 1 nach links geschoben, sodass sich Stufe 2 öffnet (per CSS wird der Selektor "is-open" zur bestehenden Klasse "offcanvas-list" hinzugefügt. Dasselbe für Stufe 3.Das funktioniert auch alles wunderbar. Nun benötigt man natürlich noch einen "Zurück-Button", und hier komme ich einfach nicht weiter.
Im Moment sammel ich per document.querySelectorAll alle "offcanvas-list" und entferne bei Klick auf den "Zurück-Button" "is-open".
Für Stufe 2 zurück auf Stufe 1 funktioniert das auch tadellos. Problem ist allerdings, dass ich dadurch natürlich auch von Stufe 3 direkt zu Stufe 1 springe anstatt nur auf Stufe 2.
Ich habe schon alle möglichen if Konstellationen durchgespielt, aber ich komme einfach auf keine Lösung.
Hat zufällig jemand eine Idee?
Code:
<div class="navigation-offcanvas-container js-navigation-offcanvas">
<div class="navigation-offcanvas-overlay-content">
<!-- FIRST LEVEL -->
<ul class="list-unstyled navigation-offcanvas-list">
<li class="navigation-offcanvas-list-item" data-first-trigger="id1" data-offcanvas-menu-level="level1">
<div class="navigation-offcanvas-link nav-item">
<span class="navigation-offcanvas-link-icon js-navigation-offcanvas-loading-icon">Kategorien</span>
<span class="icon icon-arrow-medium-right icon-sm">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16" viewBox="0 0 16 16"><defs><path id="icons-solid-arrow-medium-right" d="M4.7071 5.2929c-.3905-.3905-1.0237-.3905-1.4142 0-.3905.3905-.3905 1.0237 0 1.4142l4 4c.3905.3905 1.0237.3905 1.4142 0l4-4c.3905-.3905.3905-1.0237 0-1.4142-.3905-.3905-1.0237-.3905-1.4142 0L8 8.5858l-3.2929-3.293z"></path></defs><use transform="rotate(-90 8 8)" xlink:href="#icons-solid-arrow-medium-right" fill="#758CA3" fill-rule="evenodd"></use></svg>
</span> </div>
</li>
</ul>
<!-- SECOND LEVEL -->
<ul class="navigation-offcanvas-entry list-unstyled navigation-offcanvas-list is-open" data-first-offcanvas="id1" data-offcanvas-back="level1">
<li class="navigation-offcanvas-list-item" data-second-trigger="77b959cf66de4c1590c7f9b7da3982f3" data-offcanvas-menu-level="level2">
<div class="navigation-offcanvas-link nav-item">
<span class="navigation-offcanvas-link-icon js-navigation-offcanvas-loading-icon">Food</span>
<span class="icon icon-arrow-medium-right icon-sm">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16" viewBox="0 0 16 16"><defs><path id="icons-solid-arrow-medium-right" d="M4.7071 5.2929c-.3905-.3905-1.0237-.3905-1.4142 0-.3905.3905-.3905 1.0237 0 1.4142l4 4c.3905.3905 1.0237.3905 1.4142 0l4-4c.3905-.3905.3905-1.0237 0-1.4142-.3905-.3905-1.0237-.3905-1.4142 0L8 8.5858l-3.2929-3.293z"></path></defs><use transform="rotate(-90 8 8)" xlink:href="#icons-solid-arrow-medium-right" fill="#758CA3" fill-rule="evenodd"></use></svg>
</span> </div>
</li>
<li class="navigation-offcanvas-list-item" data-second-trigger="a515ae260223466f8e37471d279e6406" data-offcanvas-menu-level="level2">
<div class="navigation-offcanvas-link nav-item">
<span class="navigation-offcanvas-link-icon js-navigation-offcanvas-loading-icon">Clothing</span>
<span class="icon icon-arrow-medium-right icon-sm">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16" viewBox="0 0 16 16"><defs><path id="icons-solid-arrow-medium-right" d="M4.7071 5.2929c-.3905-.3905-1.0237-.3905-1.4142 0-.3905.3905-.3905 1.0237 0 1.4142l4 4c.3905.3905 1.0237.3905 1.4142 0l4-4c.3905-.3905.3905-1.0237 0-1.4142-.3905-.3905-1.0237-.3905-1.4142 0L8 8.5858l-3.2929-3.293z"></path></defs><use transform="rotate(-90 8 8)" xlink:href="#icons-solid-arrow-medium-right" fill="#758CA3" fill-rule="evenodd"></use></svg>
</span> </div>
</li>
<li class="navigation-offcanvas-list-item" data-second-trigger="251448b91bc742de85643f5fccd89051" data-offcanvas-menu-level="level2">
<div class="navigation-offcanvas-link nav-item">
<span class="navigation-offcanvas-link-icon js-navigation-offcanvas-loading-icon">Free time & electronics</span>
<span class="icon icon-arrow-medium-right icon-sm">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16" viewBox="0 0 16 16"><defs><path id="icons-solid-arrow-medium-right" d="M4.7071 5.2929c-.3905-.3905-1.0237-.3905-1.4142 0-.3905.3905-.3905 1.0237 0 1.4142l4 4c.3905.3905 1.0237.3905 1.4142 0l4-4c.3905-.3905.3905-1.0237 0-1.4142-.3905-.3905-1.0237-.3905-1.4142 0L8 8.5858l-3.2929-3.293z"></path></defs><use transform="rotate(-90 8 8)" xlink:href="#icons-solid-arrow-medium-right" fill="#758CA3" fill-rule="evenodd"></use></svg>
</span> </div>
</li>
</ul>
<!-- THIRD LEVEL -->
<ul class="navigation-offcanvas-entry list-unstyled navigation-offcanvas-list" data-second-offcanvas="77b959cf66de4c1590c7f9b7da3982f3" data-offcanvas-back="level2">
<li class="navigation-offcanvas-list-item">
<a class="navigation-offcanvas-link nav-item" href="http://localhost:9998/Food/Bakery-products/" itemprop="url" title="Bakery products">
<span itemprop="name">Bakery products</span>
</a>
</li>
<li class="navigation-offcanvas-list-item">
<a class="navigation-offcanvas-link nav-item" href="http://localhost:9998/Food/Fish/" itemprop="url" title="Fish">
<span itemprop="name">Fish</span>
</a>
</li>
<li class="navigation-offcanvas-list-item">
<a class="navigation-offcanvas-link nav-item" href="http://localhost:9998/Food/Sweets/" itemprop="url" title="Sweets">
<span itemprop="name">Sweets</span>
</a>
</li>
</ul>
<ul class="navigation-offcanvas-entry list-unstyled navigation-offcanvas-list" data-second-offcanvas="a515ae260223466f8e37471d279e6406" data-offcanvas-back="level2">
<li class="navigation-offcanvas-list-item">
<a class="navigation-offcanvas-link nav-item" href="http://localhost:9998/Clothing/Women/" itemprop="url" title="Women">
<span itemprop="name">Women</span>
</a>
</li>
<li class="navigation-offcanvas-list-item">
<a class="navigation-offcanvas-link nav-item" href="http://localhost:9998/Clothing/Men/" itemprop="url" title="Men">
<span itemprop="name">Men</span>
</a>
</li>
</ul>
<ul class="navigation-offcanvas-entry list-unstyled navigation-offcanvas-list" data-second-offcanvas="251448b91bc742de85643f5fccd89051" data-offcanvas-back="level2">
<li class="navigation-offcanvas-list-item">
<a class="navigation-offcanvas-link nav-item" href="http://localhost:9998/Free-time-electronics/Test/" itemprop="url" title="Test">
<span itemprop="name">Test</span>
</a>
</li>
<li class="navigation-offcanvas-list-item">
<a class="navigation-offcanvas-link nav-item" href="http://localhost:9998/Free-time-electronics/Test2/" itemprop="url" title="Test2">
<span itemprop="name">Test2</span>
</a>
</li>
</ul>
</div>
</div>
Zuletzt bearbeitet: