Quiero mostrar div oculto después de desplazarme hacia abajo y luego desplazarme hacia arriba. Esto significa que después de desplazarme hacia abajo y luego hacia arriba, se muestra el div oculto.

Este es mi js, pero es solo desplazarse hacia abajo.

$(document).scroll(function() {
  let y = $(this).scrollTop();
  if (y > 100) {
    $('.latest_news').fadeIn();
   } else {
     $('.latest_news').fadeOut();
  }
});

No sé cómo después de scrollUp, ¿ese div se muestra para mí?

Gracias.

Perdón por mi inglés.

0
Linh Nguyễn 25 dic. 2019 a las 13:07

2 respuestas

La mejor respuesta
$(document).scroll(function() {
    if ($(this).scrollTop() === 0 && $(".latest_news").is(":hidden")) {
      $(".latest_news").fadeIn();
    } else {
      $(".latest_news").fadeOut(); // remove this else block if you do not want hidden on every scroll down
    }
});
2
Ogie Sado 25 dic. 2019 a las 10:29

Te doy la solución.
Esto es muy simple.
Necesitas saber la dirección de desplazamiento.

var lastScrollTop = 0;
$(window).scroll(function(event) { 
  var st = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;

  if (st > lastScrollTop) { 
  // downscroll code 

  } else { 
  // upscroll code 
  } 

  lastScrollTop = st; 
});

Referencia mi blog: https://seunggabi.tistory.com/entry/ JS-Browser-get-scroll-direction

0
seunggabi 25 dic. 2019 a las 10:23