Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Animaciones en Vanilla JS

Animaciones en Vanilla JS

keyserfaty

April 15, 2018
Tweet

More Decks by keyserfaty

Other Decks in Programming

Transcript

  1. Cosas que vamos a hacer: . Entender transitions en css.

    . Entender brezier curves para establecer los tiempos de las animaciones. . Identificar qué métodos del DOM se suelen usar en animaciones. . Entender cómo analizar una animación para poder traducirla en código.
  2. Guía amiga para moverse por el DOM: - document.querySelector(‘.clase’) -

    document.querySelectorAll(‘#id’) - nodo.addEventListerner(‘evento’, callback) - nodo.style.prop = ‘’ -> body.style.backgroundColor = ‘red’ - nodo.setAttribute(‘style’, ‘color: red’) - nodo.getAttribute(‘data-num’)
  3. Algunas ideas: - ¿qué otras propiedades de css se pueden

    transicionar? - ¿cómo activarías para activar la transición cuando el usuario scrollea hacia abajo? - ¿se te ocurre alguna forma de que la transición vuelva a arrancar cuando el usuario clickee afuera del slider en vez de adentro? - ¿se te ocurre alguna forma de que la animación vuelva a arrancar cuando termine?
  4. Bezier curves Se usan para dibujar formas y en el

    caso de transitions nos sirve para determinar la velocidad a la que queremos que suceda la animación.
  5. ¿qué significan estas curvas? m = 0 y = mx

    + b => m es la pendiente de la curva m = 0.5 m = 0.8
  6. Mientras más se acerque el valor a 1 más rápido

    va a ser el movimiento de la animación m = 0 m = 0.5 m = 0.8
  7. ¿cómo traducimos esto en css? transition-timing-function: cubic-bezier(x2, y2, x3, y3)

    La x representa el tiempo: 0 es cuando la animación arranca y 1 es cuando termina. La y es la completitud: 0 es el valor inicial de la propiedad y 1 es el valor final.
  8. Saltar el tiempo en steps Otra forma de mover las

    animaciones en el tiempo es con steps. De esta forma se puede ir de un paso al siguiente de la animación.
  9. Identificar principio y final Crear clases para los dos estados

    Identificar propiedad en transición Agregar transición