Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

487
Vistas
Detección de la dirección de desplazamiento

Así que estoy tratando de usar JavaScript on scroll para llamar a una función. Pero quería saber si podía detectar la dirección del desplazamiento sin usar jQuery. Si no es así, ¿hay alguna solución?

Estaba pensando en simplemente poner un botón 'to top', pero me gustaría evitar eso si pudiera.

Ahora he intentado usar este código pero no funcionó:

 if document.body.scrollTop <= 0 { alert ("scrolling down") } else { alert ("scrolling up") }
over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Se puede detectar almacenando el valor scrollTop anterior y comparando el valor scrollTop actual con él.

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(){ // or window.addEventListener("scroll".... 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 { // upscroll code } lastScrollTop = st <= 0 ? 0 : st; // For Mobile or negative scrolling }, false);
over 4 years ago · Santiago Trujillo Denunciar

0

Manera simple de capturar todos los eventos de desplazamiento (toque y rueda)

 window.onscroll = function(e) { // print "false" if direction is down and "true" if up console.log(this.oldScroll > this.scrollY); this.oldScroll = this.scrollY; }
over 4 years ago · Santiago Trujillo Denunciar

0

Use esto para encontrar la dirección de desplazamiento. Esto es solo para encontrar la dirección del desplazamiento vertical. Soporta todos los navegadores cruzados.

 var scrollableElement = document.body; //document.getElementById('scrollableElement'); scrollableElement.addEventListener('wheel', checkScrollDirection); function checkScrollDirection(event) { if (checkScrollDirectionIsUp(event)) { console.log('UP'); } else { console.log('Down'); } } function checkScrollDirectionIsUp(event) { if (event.wheelDelta) { return event.wheelDelta > 0; } return event.deltaY < 0; }

Ejemplo

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda