JavaScript zur Implementierung eines einziehbaren sekundären Menüs

JavaScript zur Implementierung eines einziehbaren sekundären Menüs

Der spezifische Code zur Implementierung des einziehbaren sekundären Menüs in JavaScript dient Ihnen als Referenz. Der spezifische Inhalt ist wie folgt

Einklappbares Sekundärmenü:

Fallbeschreibung: Das Effektdiagramm ist wie folgt. Es kann immer nur eines geöffnet werden. Nach dem Öffnen ändert sich das + Zeichen in -.

HTML Code

<!--Liste abrufen-->
<Stil>
 
    li {
        /*Den Li-Punkt löschen*/
        Listenstil: keiner;
    }
 
    li Spanne {
        /*Hintergrundbild für das Span-Tag festlegen (kleine Plus- und Minuszeichen am Anfang, keine Wiederholung, Anfangsposition 0 0)*/
        Hintergrund: URL (add.png) keine Wiederholung links Mitte;
        Polsterung links: 20px;
    }
 
    /*Startstil*/
    li ul{
        Höhe: 0;
        /*Überlauf ausgeblendet*/
        Überlauf: versteckt;
        /*Übergangseffekt hinzufügen*/
        Übergang: alle 0,5 s;
    }
    /*Stil erweitern*/
    .offen{
        Hintergrundbild: URL (minus.png);
    }
    .öffnen+ul{
        Höhe: 70px;
    }
 
 
</Stil>
 
 
<ul Klasse="Baum">
    <li><span class="open">Anwesenheitsverwaltung</span>
        <ul>
            <li>Tägliche Anwesenheit</li>
            <li>Urlaubsantrag</li>
            <li>Überstunden auf Geschäftsreise</li>
        </ul>
    </li>
    <li><span>Informationszentrum</span>
        <ul>
            <li>Tägliche Anwesenheit</li>
            <li>Urlaubsantrag</li>
            <li>Überstunden auf Geschäftsreise</li>
        </ul>
    </li>
    <li><span>Gemeinsames Büro</span>
        <ul>
            <li>Tägliche Anwesenheit</li>
            <li>Urlaubsantrag</li>
            <li>Überstunden auf Geschäftsreise</li>
        </ul>
    </li>
</ul>
 
<script src="mJS.js"></script>

JavaScript-Code

// Pull-out-Liste // Umsetzungsideen:
 
var spans = document.querySelectorAll(".tree span");
 
für (var i = 0; i < spans.length; i++) {
    spans[i].onclick = Funktion () {
        // konsole.log(dies);
        // Zu ändernde Elementspanne suchen // Klasse ändern, löschen oder hinzufügen -> öffnen
        //Überprüfen Sie, ob eine Öffnung auf sich selbst vorliegt, und löschen Sie diese ggf.!
        // this -> zeigt auf das Element, das das Ereignis ausgelöst hat if (this.className == "open") {
            // Wenn ja, dann lösche es!
            dieser.Klassenname = "";
        } anders {
            // Wenn nicht, füge es hinzu und lösche die anderen, die bereits geöffnet sind!
            //Finde das Open (li des Open-Attributs)
            var openSpan = document.querySelector(".tree.open")
            if (openSpan !== null) {
                // Wenn die Sammlung nicht leer ist, löschen Sie ihr offenes Attribut openSpan.className = "";
            }
            // Legen Sie das Open-Attribut für sich selbst fest. this.className = "open";
        }
 
 
    }
}

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Implementierungscode für JavaScript-Dropdown-Menüs
  • Universeller sekundärer Menücode (CSS+JavaScript)
  • Ein einfaches JS-Baummenü
  • JS-Implementierungscode für das dreistufige Dropdown-Menü
  • Ein JS-Implementierungscode für ein Datums-Dropdown-Menü
  • Echte mehrstufige Verknüpfungs-Dropdown-Menüklasse von JS. Einfache Realisierung des Verknüpfungsmenüs von Provinzen, Städten und Bezirken!
  • js, um eine einfache Methode zum Ein- und Ausklappen von Menüs zu erreichen
  • JavaScript realisiert das dreistufige Verknüpfungs-Dropdown-Box-Menü von Provinzen, Städten und Bezirken
  • Beispiel für einen Js-Klick-Popup-Dropdown-Menüeffekt
  • JavaScript zum Anzeigen und Ausblenden des Dropdown-Menüs

<<:  Wählen Sie eine Dropdown-Liste für Webseiten und ein Problem mit der Abdeckung der Div-Ebene aus.

>>:  So legen Sie mit CSS eine Hintergrundunschärfe fest

Artikel empfehlen

isPrototypeOf-Funktion in JavaScript

Inhaltsverzeichnis 1. istPrototyp von() Beispiel ...

Beispielcode zur Umsetzung des „Pluszeichen“-Effektes mit CSS

So erzielen Sie den unten gezeigten Pluszeichen-E...

Eine kurze Analyse des Zustandsverständnisses von React

Wie definiert man komplexe Komponenten (Klassenko...

So erstellen Sie eine MySQL-Datenbank (de1) mit Befehlen

1. Verbindung zu MySQL herstellen Format: mysql -...

JS realisiert die Berechnung des Gesamtpreises der Waren im Warenkorb

JS berechnet den Gesamtpreis der Waren im Warenko...

Grafisches Tutorial zur Deinstallation und Installation von MySQL unter Linux

Dies ist mein erster Blog. Ich bin seit zwei Jahr...

Telnet wird im Alpine-Image zu busybox-extras verschoben

Das Telnet im Alpine-Image wurde nach Version 3.7...

Linux verwendet den Befehl lsof, um den Status des Dateiöffnens zu überprüfen

Vorwort Wir alle wissen, dass unter Linux „alles ...

So kapseln Sie die Karussellkomponente in Vue3

Zweck Kapseln Sie die Karussellkomponente und ver...

Ideen und Methoden zur inkrementellen Sicherung einer MySQL-Datenbank

Um eine inkrementelle Sicherung der MySQL-Datenba...