Ziele für diesen ZeitraumVerwenden Sie JavaScript, um Bodennavigationseffekte zu erstellen und zwei Funktionen zu erreichen:
1. Funktionsimplementierung1.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 Verhaltensebene1.3.1 BodensprungKlicken 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überwachungEtagenü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. Effektvorschau3. ProjektcodeKlicken 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:
|
<<: XHTML-Erste-Schritte-Tutorial: XHTML-Hyperlinks
>>: So zeigen Sie Bildinformationen in Docker an
Vorwort Die Schlafsystemfunktion in MySQL hat nur...
#include <asm/io.h> #define ioremap(Cookie,...
Laden Sie zuerst die Version 15.1 von VMware Work...
In diesem Artikel wird der spezifische Code von N...
Wir müssen zunächst die Luftqualitätsdaten mit de...
Ich möchte C/C++ verwenden, um grundlegende Daten...
Inhaltsverzeichnis JavaScript-Prototypenkette Obj...
MySQL kann bei der Installation festgelegt werden...
Aus der Tomcat-Konfigurationsdatei können wir ers...
Inhaltsverzeichnis 1. Virtueller Host 1.1 Virtuel...
Und oft ist es für Wartungsarbeiten erforderlich, ...
In diesem Artikel wird der spezifische Code von V...
Während der Projektentwicklung werden unsere Date...
In diesem Artikel wird der spezifische Code des h...
Wenn wir langen Text anzeigen, müssen wir auf der ...