Función para volver quedando a la misma altura de la página anterior

  • Autor Autor ultracobra
  • Fecha de inicio Fecha de inicio
ultracobra

ultracobra

Ni
Verificado por Whatsapp
Quiero un script que habilite que cuando se devuelva en cualquier parte de la pantalla se haga volver al botón, y se quede exactamente a la altura de la pagina donde estaba.

Qué otra cosa debo tener en cuenta pues probé variaciones que no me funcionaron:

JavaScript:
Quiero un script que habilite que cuando se devuelva en cualquier parte de la pantalla se haga reward o algo asi, se quede exactamente a la altura de la pagina donde estaba
JavaScript:
//
history.scrollRestoration = 'manual';
window.addEventListener('scroll', () => {
  history.replaceState({ scrollTop: window.pageYOffset }, '');
});

//
window.addEventListener('popstate', (event) => {
  if (event.state) {
    window.scrollTo({ top: event.state.scrollTop, behavior: 'smooth' });
  }
});

JavaScript:
window.addEventListener('beforeunload', () => {
  const scrollPosition = {
    x: window.scrollX,
    y: window.scrollY
  };
  sessionStorage.setItem('scrollPosition', JSON.stringify(scrollPosition));
});

//
window.addEventListener('load', () => {
  const scrollPosition = JSON.parse(sessionStorage.getItem('scrollPosition'));
  if (scrollPosition) {
    window.scrollTo(scrollPosition.x, scrollPosition.y);
    sessionStorage.removeItem('scrollPosition');
  }
});

JavaScript:
//
history.scrollRestoration = 'manual';
window.addEventListener('scroll', () => {
  history.replaceState({ scrollTop: document.documentElement.scrollTop || document.body.scrollTop }, '');
});

//
window.addEventListener('popstate', (event) => {
  if (event.state) {
    window.scrollTo({ top: event.state.scrollTop, behavior: 'smooth' });
  }
});
 
El código que estás usando parece correcto para recordar la posición del scroll al volver a una página anterior. Sin embargo, debes tener en cuenta que el comportamiento del botón de "volver" del navegador puede variar según el navegador y la plataforma que se esté utilizando.

Para asegurarte de que el botón de "volver" del navegador funcione correctamente y vuelva a la posición del scroll, es importante que estés navegando en el mismo sitio web. Si cambias de sitio web, es posible que el botón de "volver" no restaure la posición del scroll.

También debes verificar que tu página no esté usando algún tipo de enrutamiento dinámico (por ejemplo, con JavaScript) que pueda interferir con la funcionalidad del botón de "volver" del navegador. Si el enrutamiento se hace de forma dinámica, es posible que necesites usar una biblioteca adicional para administrar el histórico del navegador y el scroll.
 
Ejemplo visual?
 

Adjuntos

  • Sin títuloFB.webp
    Sin títuloFB.webp
    41,4 KB · Visitas: 13
Atrás
Arriba