Foros del Web » Programando para Internet » Javascript »

Fade entre 2 imágenes

Estas en el tema de Fade entre 2 imágenes en el foro de Javascript en Foros del Web. ¡Qué tal gente! Tengo un problemilla, bah... una molestia más que nada, en cuanto a un menu que realiza una transisión entre dos imágenes cuando ...
  #1 (permalink)  
Antiguo 26/03/2008, 11:22
 
Fecha de Ingreso: enero-2007
Mensajes: 10
Antigüedad: 17 años, 3 meses
Puntos: 0
Fade entre 2 imágenes

¡Qué tal gente! Tengo un problemilla, bah... una molestia más que nada, en cuanto a un menu que realiza una transisión entre dos imágenes cuando se le pasa el mouse (onmouseover) y cuando se lo quita (onmouseout).

Pueden ver el ejemplo www.d-sur.com.ar/viktor/index.php

El tema es el siguiente: ¡funciona! (ooooh)

PERO (¡CHAN!)... cuando se pasa el mouse y se lo quita antes de tiempo, el botón "parpadea". Me supongo que esto es por el hecho de que se activan 2 timers a la vez.

Posible solución (¿?)... cancelar (clearTimeOut) el timeout cuando se quita el puntero antes de su fin... (woooow)... el tema es (música de suspenso) ¡¿COMO?!

Espero sugerencias y/o soluciones.

Gracias
  #2 (permalink)  
Antiguo 26/03/2008, 12:18
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: Fade entre 2 imágenes

Hola:

Para cancelar el timeout debes haberlo asignado a una variable... y si no quieres complicarte mucho, debe tratarse de una variable global (definida en el head)... pero si el tempodizador lo tienes con setTimeout tal vez baste con no seguir con la temporización con algún otro atributo... o poner alguna variable a false...

onmouseover="Ok = true; temporizar()" onmouseout="Ok = false"...
y en temporizar:
if (Ok) {
asignaciones_del_efecto();
setTimeout("temporizar()", retardo);
}
else deshacerEfecto();

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:35.