Detaillierte Erläuterung des Prozesses zum Erstellen von Bodennavigationseffekten mit JavaScript

Detaillierte Erläuterung des Prozesses zum Erstellen von Bodennavigationseffekten mit JavaScript

Ziele für diesen Zeitraum

Verwenden Sie JavaScript, um Bodennavigationseffekte zu erstellen und zwei Funktionen zu erreichen:

  • Bodensprung
  • Etagenüberwachung

1. Funktionsimplementierung

1.1 Strukturschicht

<div id="Box" Klasse="Box">
    <ul Klasse="Liste">
        <li class="content-part" data-n="Spalte 1">Spalte 1</li>
        <li class="content-part" data-n="Spalte 2">Spalte 2</li>
        <li class="content-part" data-n="Spalte Drei">Spalte Drei</li>
        <li class="content-part" data-n="Spalte 4">Spalte 4</li>
        <li class="content-part" data-n="Spalte Fünf">Spalte Fünf</li>
    </ul>
</div>
<div Klasse="links">
    <ul id="linke-Liste">
        <li data-n="Spalte 1">Spalte 1</li>
        <li data-n="Spalte 2">Spalte 2</li>
        <li data-n="Spalte Drei">Spalte Drei</li>
        <li data-n="Spalte 4">Spalte 4</li>
        <li data-n="Spalte Fünf">Spalte Fünf</li>
    </ul>
</div>

1.2 Stilebene

<Stil>
    * {
        Rand: 0;
        Polsterung: 0;
    }
    Körper .box {
        Breite: 1200px;
    }
    Körper .box {
        Rand: 0 automatisch;
    }
    ul {
        Listenstil: keiner;
    }
    Körper .box ul li {
        Höhe: 800px;
        Hintergrundfarbe: Silber;
        Rand unten: 20px;
        Schriftgröße: 30px;
        Schriftstärke: fett;
    }
    Körper .links {
        Position: fest;
        links: 20px;
        unten: 100px;
        Breite: 100px;
        Höhe: 250px;
        oben: 50 %;
        Rand oben: -125px;
        Hintergrundfarbe: Silber;
    }
    Körper .links ul li {
        Höhe: 50px;
        Zeilenhöhe: 50px;
        Textausrichtung: zentriert;
        Cursor: Zeiger;
    }
    Körper .aktuell {
        Farbe: #fff;
        Hintergrundfarbe: Tomate;
    }
</Stil>

1.3 Verhaltensebene

1.3.1 Bodensprung

Klicken Sie im linken Menü auf die Etagenschaltfläche, um zur entsprechenden Etage zu springen.

var oList = document.getElementById('linke Liste');
// Klickereignisdelegat oList.onclick = function (e) {
    wenn (e.target.tagName.toLowerCase() == 'li') {
        // Den Wert von data-n abrufen var n = e.target.getAttribute('data-n');
        // [] Attributselektor var contentPart = document.querySelector('.content-part[data-n=' + n + ']');
        //Bildlauf festlegen document.documentElement.scrollTop = contentPart.offsetTop;
    }
}

1.3.2 Etagenüberwachung

Etagenüberwachung: Beim Scrollen der Seite ändert sich der Hintergrund der Etagenspalte im linken Menü entsprechend.

//Beim Scrollen der Seite ändert sich der Hintergrund der Box-Spalte links entsprechend var contents = document.querySelectorAll('.content-part');
var lis = document.querySelectorAll('#left-list li');
var offsetTopArr = [];
für (var i = 0; i < Inhalt.Länge; i++) {
    offsetTopArr.push(Inhalt[i].offsetTop);
}
// Zum einfacheren Vergleichen fügen Sie infinite offsetTopArr.push(Infinity) hinzu;
// Monitor-Scrollen var nowFloor = -1;
fenster.onscroll = Funktion (e) {
    var nowScrollTop = document.documentElement.scrollTop;
    // Der i-Wert von break ist der Index des Box-Arrays für (var i = 0; i < offsetTopArr.length; i++) {
        wenn (jetztScrollTop >= offsetTopArr[i] und jetztScrollTop < offsetTopArr[i + 1]) {
            brechen;
        }
    }
    // Die Stockwerke sind nicht gleich, ändere den Stil if (nowFloor != i) {
        jetztFloor = i;
        für (var j = 0; j < lis.length; j++) {
            wenn (j == i) {
                // Stil zum aktuellen Stockwerk hinzufügen lis[j].className = 'current';
            } anders {
                //Entfernen Sie die Stile anderer Etagen lis[j].className = '';
            }
        }
    }
}

2. Effektvorschau

Bildbeschreibung hier einfügen

3. Projektcode

Klicken Sie hier, um zum Code-Repository zu gelangen und den vollständigen Code anzuzeigen.

Damit ist dieser Artikel über den detaillierten Prozess zum Erstellen von Bodennavigationseffekten mit JavaScript abgeschlossen. Weitere relevante Inhalte zur Bodennavigation in JavaScript finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den verwandten Artikeln weiter unten. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • js, um einen Boden-Scrolling-Effekt zu erzielen
  • JS-Codebeispiel zum Erzielen eines Website-Bodennavigationseffekts
  • JS realisiert die Bodenspezialeffekte der Navigationsleiste
  • Beispiel einer von AngularJS implementierten Funktion für einen Ankerpunkt-Bodensprung
  • JS realisiert die Message Board-Funktion [Bodeneffektanzeige]
  • Reines HTML+CSS+JavaScript für ein atemberaubendes Seitenlayout (Beispielcode)
  • js zur Realisierung der Etagennavigationsfunktion
  • Ein einfaches Beispiel für die Implementierung von Bodeneffekten mit js
  • JavaScript zum Erzielen eines Bodeneffekts

<<:  XHTML-Erste-Schritte-Tutorial: XHTML-Hyperlinks

>>:  So zeigen Sie Bildinformationen in Docker an

Artikel empfehlen

Kostenloses Tool zur Überprüfung der Richtigkeit von HTML-, CSS- und RSS-Feeds

Ein Trick zum Umgang mit dieser Art von Fehlern be...

Element Plus implementiert Affix

Inhaltsverzeichnis 1. Komponenteneinführung 2. Qu...

Hinweise zum Upgrade auf mysql-connector-java8.0.27

Kürzlich wurde bei einem Online-Sicherheitsscan e...

4 Möglichkeiten zur Optimierung von MySQL-Abfragen für Millionen von Daten

Inhaltsverzeichnis 1. Der Grund, warum das Limit ...

Erstellen Sie ein Docker-Image mit Dockerfile

Inhaltsverzeichnis Erstellen Sie ein Docker-Image...

MySQL 5.7.17 Installations- und Konfigurations-Tutorial unter CentOS6.9

CentOS6.9 installiert Mysql5.7 zu Ihrer Informati...