Hola muy buenas.
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 originalvar 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
<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';"> <img name="naranja"src="imagenes/naranja1.gif" width="145" height="40" alt="probando" /></div>
<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>
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 originalvar 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 <li onmouseover="animaLink('imagenes/amarillo1.png','imagenes/amarillo2.png','imagenes/amarillo3.png','imagenes/amarillo4.png','imagenes/amarillo5.png','imagenes/amarillo6.png','amarillo');" onmouseout="restaurarLink();"><a id="amarillo" class="amarillo" href="#">REPROGRAFIA
</a></li> <li><a id="naranja" class="naranja" href="#">SERVICIOS
</a></li> <li><a class="verde" href="#">PRESUPUESTO
</a></li> <li><a class="rosa" href="#">CONTACTO
</a></li> <li><a class="azul" href="#">ESTAMOS EN
</a></li> <li><a class="rojo" href="http://www.buzonetix.es">ENLACES DE INTERES
</a></li> <li><a class="negro" href="#">MAPA DEL SITIO
</a></li>
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