Estoy creando una aplicación React donde tengo enlaces de pie de página que, cuando se hace clic, llevan al usuario al final de cualquier página en la que esté haciendo clic. Quiero cambiarlo para que cuando se haga clic en estos enlaces, el usuario sea llevado automáticamente a la parte superior de la nueva página.
Ya probé una solución de desplazamiento automático a la parte superior de la página, que FUNCIONA, pero el problema es que tengo un desplazamiento suave configurado para mi sitio web porque tengo algunos botones que se desplazan a ciertas partes de la página en las que se hace clic, y quiero eso. animación para ser suave. Sin embargo, para esta función en particular, no quiero un desplazamiento suave porque no quiero que el usuario vea que fue llevado al final de una página y luego se desplazó hacia arriba.
Este es mi código actual:
useEffect(() => { window.scrollTo(0, 0) }, [])¿Hay alguna forma en que pueda lograr esto sin usar el desplazamiento para evitar tener que mostrar el comportamiento de desplazamiento suave?
Puede intentar agregar un comportamiento instantáneo en la función scrollTo y avíseme si funciona
useEffect(() => { window.scrollTo({ top: 0, left: 0, behavior: "instant" }); }, [])window.scrollTo({ top: 0, left: 0, behavior: 'auto' });Con suerte, debería eliminar la acción suave.
document.documentElement.scrollTop = 0; // For Chrome, Firefox, IE and Opera document.body.scrollTop = 0; // For Safari