Ver Mensaje Individual
  #3 (permalink)  
Antiguo 11/01/2014, 06:38
Avatar de Alexis88
Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: ¿Efecto transition (CSS) en un script de onmouseover?

Como bien te recomiendan en la respuesta anterior, lo más práctico para estos casos, es realizar el efecto con CSS. Un ejemplo:

Código HTML:
Ver original
  1. <div id="div1">Hola</div>
  2. <div id="div2">Adiós</div>

Código CSS:
Ver original
  1. #div2{
  2.   transition: display .8s;
  3.   display: none;
  4. }
  5.  
  6. #div1:hover ~ #div2{
  7.   display: block;
  8. }

Con esto, ocultas a div2 desde el inicio y cada vez que poses el puntero del mouse sobre el div1, se mostrará el div2. La transición a aplicarse, se indica en las propiedades de div2.

Sin embargo, si insistes en hacerlo con JavaScript, esta sería una forma:

Código Javascript:
Ver original
  1. var div1 = document.getElementById("div1"),
  2.     div2 = document.getElementById("div2");
  3.  
  4. div1
  5.     .addEventListener("mouseover", function(){
  6.         div2.style.transition = ".8s";
  7.         div2.style.display = "block";
  8.     }, false)
  9.     .addEventListener("mouseout", function(){
  10.         div2.style.transition = ".8s";
  11.         div2.style.display = "none";
  12.     }, false);

Y utilizando los métodos fadeIn y fadeOut de jQuery:

Código Javascript:
Ver original
  1. $("#div1").hover(function(){
  2.     $("#div2").fadeIn(800);
  3. }, function(){
  4.     $("#div2").fadeOut(800);
  5. });

Si deseas hacer este tipo de efectos con JavaScript, te recomiendo utilizar los métodos de jQuery, pues así como los que muestro en el ejemplo, tiene otros muy buenos: http://api.jquery.com/category/effects/

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand