Estoy tratando de realizar un efecto sobre unos links para que sea como que la imagen se mueve un poco para un lado segun pones el enlace por encima.
Me salio muy bien sobre etiquetas <img> aqui os pongo el codigo javascript:
Código Javascript:
Ver original
var indx = -1; var tiempoEspera = 50; var color = new Array(6); color[0]= new Image color[1]= new Image color[2]= new Image color[3]= new Image color[4]= new Image color[5]= new Image function camimagen(uno,dos,tres,cuatro,cinco,seis,colores){ var n; color[6] = document.images[colores].getAttribute('name') for (n=0;n<6;n++){ color[n].src = arguments[n]; } var size = color.length - 2 ; if (indx < size){ indx++ ; } else{ indx = 0 ; return; } document.images[colores].src=color[indx].src; window.setTimeout("camimagen(color[0].src,color[1].src,color[2].src,color[3].src,color[4].src,color[5].src, color[6])", tiempoEspera); }
su html seria:
Código HTML:
Ver original
<body> <div id="apDiv1" onmouseover="camimagen('imagenes/naranja1.gif','imagenes/naranja2.gif','imagenes/naranja3.gif','imagenes/naranja4.gif','imagenes/naranja5.gif','imagenes/naranja6.gif', 'naranja' )" onmouseout="document.naranja.src='imagenes/naranja1.gif';"> <div id="apDiv2" onmouseover="camimagen('imagenes/amarillo1.gif','imagenes/amarillo2.gif','imagenes/amarillo3.gif','imagenes/amarillo4.gif','imagenes/amarillo5.gif','imagenes/amarillo6.gif', 'amarillo' )" onmouseout="document.amarillo.src='imagenes/amarillo1.gif';"><img name="amarillo" src="imagenes/amarillo1.gif" width="145" height="40" alt="fgdsfdsf" /></div> </body>
este funciona de lujo. el problema me surge cuando quiero hacer la animacion sobre un fondo de una etiqueta <li>
aqui el codigo:
Código Javascript:
Ver original
var indx = -1; var tiempoEspera = 50; var color = new Array(7); function animaLink(uno,dos,tres,cuatro,cinco,seis,colores){ var n; color[6]=colores; for (n=0;n<6;n++){ color[n] = "url("+arguments[n]+")"; } var size = color.length - 1 ; if (indx < size){ indx++ ; } else{ indx = 0 ; return; } document.getElementById(color[6]).style.backgroundImage=color[indx]; window.setTimeout("animaLink(color[0],color[1],color[2],color[3],color[4],color[5], color[6])", tiempoEspera); } function restaurarLink(){ return document.getElementById('amarillo').style.backgroundImage='url(imagenes/amarillo1.png)'; }
su html de los enlaces:
Código HTML:
Ver original
De momento como podeis ver solo estoy probando en el primer enlace. Algo sale pero es como que la animacion aveces funciona aveces va a trompicones. vamos como que funciona pero sin ir fino. bastante tosco.
Y la verdad ya no se que hacer.
Si alguien tiene una sugerencia lo agradeceria mucho