Skip to content

Instantly share code, notes, and snippets.

@javierarcheni
Last active March 7, 2021 19:57
Show Gist options
  • Save javierarcheni/40755e3ba228fa9bd6e1281babc33515 to your computer and use it in GitHub Desktop.
Save javierarcheni/40755e3ba228fa9bd6e1281babc33515 to your computer and use it in GitHub Desktop.
Ejemplo de desplazamiento scrollIntoView()
/* Ejemplo de código que permite asignar método de desplazamiento en un menú gracias a scrollIntoView()
Referencia: https://developer.mozilla.org/es/docs/Web/API/Element/scrollIntoView
Válido para ciertos navegadores (requiere polyfill para dar soporte a otros)
*/
/* Asignamos a una variable todos los elementos anchor que contengan la clase scrollTo */
let buttons = document.querySelectorAll('a.scrollTo');
/* Recorremos la lista de elementos para asignar un receptor al evento click */
buttons.forEach((button) => {
button.addEventListener('click', (e) => {
/* evitamos que se ejecute el comportamiento por defecto */
e.preventDefault();
/* obtenemos el valor del atributo href para saber hacia dónde desplazarse */
let target = e.currentTarget.getAttribute('href');
/* Asignamos el método a cada elemento pasando los atributos opcionales que queramos */
document.querySelector(target).scrollIntoView({
behavior: 'smooth',
block: 'end'
});
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment