Wie füge ich jedes Mal eine Ladeanimation hinzu, wenn ich zu einem Element scrolle? Element, das Anfangsparameter hinzufügtNehmen Sie die Animation im obigen Bild als Beispiel, fügen Sie zwei linke und rechte Container hinzu und platzieren Sie den Inhalt in den Containern. Fügen Sie Anfangsdaten mit einer Standardtransparenz von 0 und einer Bewegung von 100 Pixeln nach links und rechts hinzu. //Linker Container.item-leftContainer { Deckkraft: 0; transformieren: übersetzenX(-100px); } //Rechter Container.item-rightContainer { Deckkraft: 0; transformieren: übersetzenX(100px); } Hinzufügen von AnimationsdatenFügen Sie Animationsdaten in weniger hinzu. Hier wird nur bis eingestellt. Sie können die anfängliche Parametereinstellung in Schritt 1 auch weglassen und in der Animation von einstellen. Nach der Ausführung ändert sich die Transparenz von 0 auf 1 und die beiden Container verschieben sich 100px zur Mitte und kehren an ihre Ausgangspositionen zurück. //Animation @keyframes showLeft { Zu { Deckkraft: 1; transformieren: übersetzenX(0px); } } @keyframes zeigenRechts { Zu { Deckkraft: 1; transformieren: übersetzenX(0px); } } @keyframes hideLeft { Zu { Deckkraft: 0; transformieren: übersetzenX(-100px); } } @keyframes hideRight { Zu { Deckkraft: 0; transformieren: übersetzenX(100px); } } Auslösen einer AnimationAuslöser zum Laden/Aktualisieren der Seite – wird in componentDidMount ausgeführt Wird ausgelöst, wenn die Seite gescrollt wird – fügen Sie Listener/Logouts für Seiten-Scroll-Ereignisse in componentDidMount und componentWillUnmount hinzu. Überprüfen Sie den Unterschied zwischen der aktuellen Bildlaufhöhe und der Position des Elements: window.pageYOffset (Scrolldistanz) + windowHeight (Fensterhöhe) > leftElement.offsetTop (relative Position des Elements) + parentOffsetTop (relative Position des übergeordneten Elements) + 200
Beim Scrollen der Seite nach unten wird die Anzeigeanimation ausgelöst, beim erneuten Scrollen der Seite nach oben wird die Ausblendanimation ausgelöst. componentDidMount() { this.checkScrollHeightAndLoadAnimation(); window.addEventListener('scroll', this.bindHandleScroll); } componentWillUnmount() { window.removeEventListener('scroll', this.bindHandleScroll); } bindHandleScroll = (Ereignis) => { this.checkScrollHeightAndLoadAnimation(); } checkScrollHeightAndLoadAnimation() { const windowHeight = window.innerHeight; let parentEelement = document.getElementById("softwareUsingWays-container") als htmlElement; const parentOffsetTop = parentEelement.offsetTop; let leftElement = (parentEelement.getElementsByClassName("item-leftContainer") als htmlCollectionOf<HTMLElement>)[0]; wenn (Fenster.SeitenYOffset + Fensterhöhe > linkesElement.OffsetTop + übergeordneterOffsetTop + 200) { leftElement.style.animation = "showLeft .6s vorwärts" //Animation hinzufügen} else { leftElement.style.animation = "hideLeft 0s vorwärts" //Animation ausblenden} let rightElement = (parentEelement.getElementsByClassName(".item-rightContainer") als HTMLCollectionOf<HTMLElement>)[0]; wenn (Fenster.SeitenYOffset + Fensterhöhe > rechtesElement.OffsetTop + übergeordneterOffsetTop + 200) { rightElement.style.animation = "showRight .6s vorwärts" //Animation hinzufügen} else { rightElement.style.animation = "hideRight 0s vorwärts" //Animation ausblenden} } Dies ist das Ende dieses Artikels über die Verwendung von HTML+CSS zum Scrollen zur Elementposition, um den Ladeanimationseffekt anzuzeigen. Weitere verwandte HTML-Ladeanimationsinhalte finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder stöbern Sie weiter in den verwandten Artikeln unten. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! |
<<: Sechs merkwürdige und nützliche Dinge über JavaScript
>>: Schritte zum Einrichten und Mounten freigegebener Ordner auf Windows-Host und Docker-Container
Inhaltsverzeichnis Vorwort vue.config.js-Konfigur...
Inhaltsverzeichnis 1. Grundlegende Beispiele 2. B...
Installieren Sie die Linux7.2-Internetzugriffskon...
In Google Chrome werden Sie nach der erfolgreiche...
In diesem Artikel wird der Beispielcode einer CSS...
Inhaltsverzeichnis 1. Einführung in Hochverfügbar...
Manchmal möchten wir nicht, dass der Inhalt unser...
Inhaltsverzeichnis 1. Abfrageoptimierung 1. MySQL...
Zusätzlich zu den B-Tree-Indizes bietet MySQL auc...
Inhaltsverzeichnis 1. Was ist Ts 2. Grundlegende ...
Informationen zur Centos-Installation von MySQL f...
Bei der tatsächlichen Entwicklung kann der Primär...
Ubuntu 18.04 installiert MySQL 5.7 zu Ihrer Infor...
Problembeschreibung Wie wir alle wissen, wird bei...
1. Herunterladen Laden Sie mysql-5.7.19-linux-gli...