Animaciones con JavaScript

blog-image-01

Para crear un sitio web llamativo, sin sacrificar su usabilidad y funcionalidad, podemos usar efectos o animaciones realizadas en JavaScript.

Para  iniciar recomiendo conocer más sobre los eventos de JS . En esta publicación presentaré dos tipos: onmouseenter onmouseleave .

A continuación un ejemplo de navegación sencilla: u n elemento subirá  pausadamente  y mostrará una breve descripción.

Para empezar, el HTML se crea a :

Captura de pantalla de 2016-07-14 16:36:08

Como puede observarse hay dos eventos: onmouseenter  y onmouseleave .

El onmouseenter detecta cuando el mouse ingresa al elemento donde se ha declarado el evento y  ejecuta la función inover. 

De manera similar, el evento onmouseleave detecta cuando el mouse sale del elemento y  ejecuta la función outover .

 

Definición de las funciones inover y outover

Las funciones inover y outover se definen de la siguiente manera:  

Captura de pantalla de 2016-07-14 16:31:51

En primer lugar, la función  inover  recibe el elemento con la clase  title-project como parámetro y lo añade a la clase start .

Después, la función frame es llamada en intervalos de tiempo definidos con el método setInterval. Ello con el fin de  sumar 2px a la posición que tiene title-project start .

Por su parte, la función frame es llamada hasta que la posición de title-project start es 176px y se muestra la información que contiene el title-project.

Cuando la posición es igual a 176 px , se pide al método clearTimeout detener la ejecución del marco dentro del SetInterval.

Por otro lado, la función outover recibe el elemento de title-project start como un parámetro y elimina la clase de start.

Luego llama al método clearTimeout para evitar la función frame y devuelve la posición del elemento a 0px a su estado original. 

Finalmente, el  CSS  es usado para crear los estilos iniciales:

 

Captura de pantalla de 2016-07-14 16:37:40

 

En este caso CSS se utiliza para definir el tamaño de fuente, el color de fondo y la altura del contenedor.

Dichas propiedades se aplican al contenedor con col-sm-4, CSS, de la siguiente manera:

 

Captura de pantalla de 2016-07-14 16:39:48

 

Esto es para evitar que el contenedor muestre la animación sin terminar. 

 

Conclusión:

Hacer una animación en  JavaScript es fácil. Sin embargo, los muchos dispositivos móviles en el mercado, exigen crear para tamaños de pantalla distintos.   

En conclusión, aunque esta publicación solo discutió los eventos de onmouseenter y onmouseleave, JavaScript tiene una larga lista que ayuda a crear di stintas animaciones. 

En la entrada del próximo blog veremo s la misma animación, pero con CSS3.

Para ver el resultado de esta animación puedes ir aquí .