JavaScript in TYPO3: Dynamik und Interaktivität auf höchstem Niveau

TYPO3 bietet nicht nur eine robuste und skalierbare Plattform für Webinhalte, sondern auch die Möglichkeit, diese Inhalte durch interaktive und dynamische Funktionen zu bereichern. JavaScript spielt dabei eine entscheidende Rolle. Mit einer Vielzahl von Skripten, die speziell für bestimmte Aufgaben und Effekte entwickelt wurden, können Sie das Benutzererlebnis auf Ihrer Website erheblich steigern. 

Timeline

Visualisieren Sie chronologische Ereignisse, Entwicklungen oder Geschichten mit der Timeline-Erweiterung, um Ihre Inhalte in einem historischen oder sequenziellen Kontext zu präsentieren.

1

Planung der Ereignisse

Definieren Sie die wichtigen Ereignisse oder Meilensteine, die Sie auf Ihrer Timeline darstellen möchten. Sammeln Sie alle relevanten Informationen, Daten und Bilder.

2

Erstellung der Timeline-Struktur

Nutzen Sie die Timeline-Erweiterung, um die grundlegende Struktur Ihrer Zeitleiste zu erstellen. Fügen Sie Abschnitte und Unterabschnitte hinzu, um eine klare und logische Reihenfolge zu gewährleisten.

3

Hinzufügen von Ereignissen

Fügen Sie jedes Ereignis mit Datum, Beschreibung und Bildern zur Timeline hinzu. Stellen Sie sicher, dass jedes Ereignis prägnant und informativ ist.

4

Anpassung des Designs

Passen Sie das Design Ihrer Timeline an das Layout und das Farbschema Ihrer Website an. Nutzen Sie die Designoptionen der Erweiterung, um die Timeline visuell ansprechend zu gestalten.

5

Integration und Veröffentlichung

Integrieren Sie die fertige Timeline in Ihre Website. Überprüfen Sie die Darstellung und Funktionalität auf verschiedenen Geräten und Bildschirmgrößen.

6

Aktualisierung und Pflege

Halten Sie Ihre Timeline aktuell, indem Sie regelmäßig neue Ereignisse hinzufügen und bestehende Einträge bei Bedarf aktualisieren. So bleibt Ihre Timeline stets relevant und informativ.

Mausgesteuerter Parallax-Effekt

Dieses Skript fügt Ihrer Website einen interaktiven Parallax-Effekt hinzu, der auf die Bewegung des Mauszeigers reagiert. Wenn der Benutzer mit der Maus über das Element #page-wrapper fährt, bewegen sich die darin enthaltenen Elemente mit den Klassen .moves-medium und .moves-slowly relativ zur Mausposition. Die Elemente mit der Klasse .moves-medium haben eine stärkere Bewegung (75 Einheiten), während die Elemente mit der Klasse .moves-slowly sich langsamer bewegen (25 Einheiten). Dieser Effekt wird durch die Verwendung der GSAP-Animationen erreicht und sorgt für ein dynamisches und ansprechendes Benutzererlebnis.

Mausgesteuerter Parallax-Effekt

Mausgesteuerter Parallax-Effekt

Scroll-gesteuerte Rotationseffekte

Dieses Skript fügt Ihrer Website einen interaktiven Dreh-Effekt hinzu, der auf die Scrollbewegung des Benutzers reagiert. Wenn der Benutzer auf der Seite scrollt:

  • Elemente mit der Klasse .rotation-right drehen sich um 40 Grad nach rechts.
  • Elemente mit der Klasse .rotation-left drehen sich um 40 Grad nach links.

Der Dreh-Effekt beginnt, wenn das obere Ende des Elements den unteren Rand des Viewports erreicht und endet, wenn das untere Ende des Elements den oberen Rand des Viewports erreicht. Durch die Verwendung des scrub: true Parameters wird sichergestellt, dass die Drehung flüssig und kontinuierlich ist, basierend auf der Scrollposition des Benutzers. Dies sorgt für ein dynamisches und ansprechendes Benutzererlebnis.

mehr braucht es nicht, um eine    
herausragende Webseite zu bauen

Sanftes Einblenden beim Scrollen

Dieses Skript fügt Ihrer Website einen sanften Einblendeffekt hinzu, der aktiviert wird, wenn bestimmte Elemente beim Scrollen in den Viewport kommen.

  • Die Funktion animateFrom bewegt und blendet ein gegebenes Element ein. Das Element wird standardmäßig von unten nach oben verschoben, aber die Richtung kann angepasst werden.
  • Die Funktion hide setzt die Sichtbarkeit eines gegebenen Elements auf unsichtbar.
  • Wenn das Dokument geladen ist, werden alle Elemente mit der Klasse .fade durchlaufen:
    • Zunächst wird sichergestellt, dass das Element unsichtbar ist.
    • Ein ScrollTrigger wird für jedes dieser Elemente erstellt. Wenn das Element in den Viewport eintritt (onEnter), wird die animateFrom Funktion aufgerufen, um das Element einzublenden.
    • Ein Timeout wird verwendet, um den ScrollTrigger kurz nach dem Initialisieren zu aktualisieren. Dies kann hilfreich sein, um sicherzustellen, dass die Trigger korrekt positioniert sind, besonders wenn andere Skripte oder Styles die Layoutberechnungen beeinflussen könnten.

Durch die Verwendung dieses Skripts werden Elemente mit der Klasse .fade beim Scrollen auf der Seite sanft und stilvoll eingeblendet, was für ein ansprechendes Benutzererlebnis sorgt.

"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor."

Custom Indikators für Carousel

Dieses Skript optimiert Ihr Karussell durch Hinzufügen eines Statusindikators. Dieser Indikator zeigt den Benutzern an, welcher Slide aktuell angezeigt wird und wie viele Slides insgesamt vorhanden sind (z. B. "1/5" für den ersten von fünf Slides). Dies bietet den Benutzern eine klare Vorstellung davon, wo sie sich innerhalb des Karussells befinden.

Responsives Karten-iFrame

Dieses Skript sorgt dafür, dass die Karte, die in einem iFrame mit der ID mapIframe dargestellt wird, stets responsiv ist. Beim Laden der Seite und bei jeder Änderung der Fenstergröße wird die Breite des iFrames so angepasst, dass sie 90% der gesamten Fensterbreite entspricht. Dies gewährleistet eine optimale Darstellung der Karte auf verschiedenen Bildschirmgrößen und -auflösungen.

Benutzerdefinierter 'Zurück nach oben'-Button

Dieses Skript erweitert eine "Zurück nach oben"-Funktion, die es Benutzern ermöglicht, mit einem Klick schnell zum Seitenanfang zurückzukehren. Mithilfe backToTop.js wird das Standard-SVG-Bild des Buttons durch ein benutzerdefiniertes Bild ersetzt, um eine einheitliche visuelle Darstellung sicherzustellen.

Benutzerdefiniertes Navbar-Toggler-Symbol

Dieses Skript verleiht Ihrer Website eine individuelle Note, indem es das Standard-Icon des Navbar-Togglers durch ein benutzerdefiniertes SVG-Icon ersetzt. Wenn die Seite geladen wird, prüft das Skript, ob ein Navbar-Toggler-Icon vorhanden ist. Ist dies der Fall, wird ein benutzerdefiniertes SVG-Icon von der angegebenen URL geladen und ersetzt das Standard-Icon. Dies sorgt für ein einzigartiges und konsistentes Design, das sich von der Masse abhebt.

Stilisiertes Datei-Upload-Design

Dieses Skript verwandelt das traditionelle Datei-Input-Element in ein benutzerfreundlicheres und ästhetisch ansprechenderes Design. Anstelle des gewöhnlichen "Durchsuchen"-Buttons wird ein stilisiertes Download-Symbol angezeigt. Wenn Benutzer eine Datei auswählen, wird der Dateiname elegant direkt unter dem Symbol angezeigt. Dies sorgt für eine intuitive und moderne Benutzererfahrung beim Hochladen von Dateien.

Bildschirmfüllende Bildanpassung

Dieses Skript optimiert die Darstellung von Bildern in ausgewählten Abschnitten Ihrer Webseite. Für bestimmte Abschnitte, die durch ihre IDs identifiziert werden, wird das erste Bild im Abschnitt so angepasst, dass es fast die gesamte sichtbare Höhe und Breite des Browserfensters einnimmt, wobei 100 Pixel von der Höhe abgezogen werden. Dies sorgt für eine beeindruckende, bildschirmfüllende Darstellung des Bildes, die sich automatisch an die Größe des Fensters anpasst, wenn dieses neu dimensioniert wird.

Dynamische Navigationsleisten-Anpassung

Dieses Skript verleiht Ihrer Navigationsleiste ein dynamisches Verhalten, das auf der Scrollposition des Benutzers basiert. Während der Benutzer auf der Seite nach unten scrollt, wird die Breite eines Bildes innerhalb der Navigationsleiste schrittweise von 300px auf 115px reduziert. Parallel dazu ändert sich die Hintergrundfarbe der Navigationsleiste: Sie wird vollständig undurchsichtig, wenn das Bild seine minimale Breite erreicht, und bleibt ansonsten leicht transparent. Dies sorgt für ein ansprechendes und interaktives Design, das die Benutzererfahrung verbessert.

Einheitliche Höhenanpassung

Dieses Skript verfeinert das Layout Ihrer Webseite, um ein gleichmäßiges und ästhetisch ansprechendes Erscheinungsbild zu gewährleisten. Es reguliert die Höhe verschiedener Elemente wie .custom-header innerhalb von .custom-row, .card-header und .card-text-top innerhalb von .custom-cards, sodass sie trotz unterschiedlichen Inhalts eine einheitliche Höhe aufweisen. Zusätzlich sorgt es dafür, dass alle Elemente innerhalb von .custom-col-box ein quadratisches Format besitzen. Diese gezielten Anpassungen, die sich über mehrere Klassen erstrecken, tragen zu einem strukturierten und professionellen Design Ihrer Webseite bei.

Lorem ipsum dolor sit amet..

Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Lorem ipsum dolor sit amet..

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. 

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.