Heim >Web-Frontend >js-Tutorial >Wie können Sie die Scrollrichtung in JavaScript ohne jQuery bestimmen?

Wie können Sie die Scrollrichtung in JavaScript ohne jQuery bestimmen?

Susan Sarandon
Susan SarandonOriginal
2024-10-28 08:33:30686Durchsuche

How Can You Determine Scroll Direction in JavaScript Without jQuery?

Bildlaufrichtung ohne jQuery erkennen

In der Webentwicklung kann das Erkennen der Bildlaufrichtung nützlich sein, um Funktionen wie unendliches Scrollen oder Reduzieren zu implementieren Symbolleisten. Während Bibliotheken wie jQuery einfache Lösungen bieten, wollen wir untersuchen, wie dies ohne ihre Verwendung erreicht werden kann.

Um die Scroll-Richtung zu bestimmen, können wir die vorherige Scroll-Position (scrollTop oder pageYOffset) verfolgen und sie mit dem aktuellen Scrollen vergleichen Position. Dieser Unterschied gibt an, ob wir nach oben oder unten scrollen.

Hier ist ein JavaScript-Ausschnitt, der diesen Ansatz demonstriert:

<code class="javascript">var lastScrollTop = 0;

// element should be replaced with the actual target element on which you have applied scroll, use window in case of no target element.
element.addEventListener("scroll", function(){ 
   var st = window.pageYOffset || document.documentElement.scrollTop; // Credits: "https://github.com/qeremy/so/blob/master/so.dom.js#L426"
   if (st > lastScrollTop) {
      // downscroll code
   } else if (st < lastScrollTop) {
      // upscroll code
   } // else was horizontal scroll
   lastScrollTop = st <= 0 ? 0 : st; // For Mobile or negative scrolling
}, false);</code>

In diesem Code prüfen wir, ob die aktuelle Scrollposition größer als ist oder kleiner als die vorherige Bildlaufposition. Ist der Wert größer, scrollen wir nach unten, ist er kleiner, scrollen wir nach oben. Horizontales Scrollen wird auch dadurch berücksichtigt, dass überprüft wird, ob die Scroll-Position unverändert ist.

Durch das Speichern der vorherigen Scroll-Position und den Vergleich mit der aktuellen Position können wir die Scroll-Richtung effektiv erkennen, ohne dass externe Bibliotheken erforderlich sind. Diese Methode kann auf verschiedene Elemente angewendet werden, einschließlich des Fensterobjekts zur globalen Bildlauferkennung.

Das obige ist der detaillierte Inhalt vonWie können Sie die Scrollrichtung in JavaScript ohne jQuery bestimmen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn