Javascript Page Navigation


Wir werden zur Bearbeitung der Aufgaben wieder GitHub Classroom nutzen. Das Assignment, welches für diese Session erstellt wurde, ist über diesen Einladungslink erreichbar.

Wenn Sie auf den Link klicken, wird automatisch ein Repository, mit dem Startcode des Assignments, erstellt. Klonen Sie bitte anschließend das Repository auf ihren Rechner und bearbeiten Sie die Aufgaben darin.

6.1: JavaScript Datei erzeugen und einbinden

Erzeugen Sie einen scripts Ordner in ihrem Projektordner und darin eine Datei main.js. Binden Sie anschließend die JavaScript Datei am Ende der spaghetti-aglio-olio-e-peperoncino.html ein.

6.2: Interaktion Navigations-Element

Erzeugen Sie Javascript Code in der main.js, welcher bei einem Klick auf den ersten Link in der Navigation den Content des Navigations Elements auf der Konsole ausgibt.

6.3: Interaktion Navigations-Elemente

Erweitern Sie Ihr JavaScript dahingegend, dass der Eventhandler aus der vorherigen Aufgabe für alle Links in der Navigation greift.

6.4: Highlighting Navigations-Elemente

Erweitern Sie den Eventhandler so, dass dem Navigations-Element, auf welches geklickt wurde, das Attribut-Wert-Paar [data-state='active'] angehangen wird und bei allen anderen Elementen entfernt wird.

Fügen Sie eine CSS Regel hinzu, welche das angeklickte Element visuell hervorhebt.

6.5: Intersection Observer

Entwickeln Sie nun, mit Hilfe des Intersection Observers, einen Scrollspy für One Page Navigation.

Dabei soll beim Scrollen der Seite immer das Element hervorgehoben werden, das zu der Sektion gehört, welche sich gerade im Viewport befindet. Nutzen Sie zum Highlighten der Navigations-Elemente wieder das DatA-Attribut.