Como saber si se tocan dos imágenes

Estoy hhaciendo un script en el que unas fotos se mueven y quisiera que cuando dos imágenes se tocasen se ejecutase una función.
LAs iamgenes las tengo asi puestas en el body:
<DIV id ="FOTO!" style="position: absolute; left: 17; top: 0; width: 460; height: 103">
<img src="fotos" width="65" height="65">
</div>

1 respuesta

Respuesta
1
En principio, puedes saber si se tocan obteniendo la posición de cada imagen viendo si estas entran en contacto. Me explico.
Supón que tienes 2 imágenes: imagenA e imagenB. Cada una de ellas dentro de un DIV: <div id="foto1">...</div> y <div id="foto2">...</div>.
Por lo que veo en el código que muestras, la imagen es más pequeña que el tamaño del div. Te aconsejo que adaptes el tamaño del div al de la imagen.
Pues bien, lo primero que tienes que hacer es obtener sus coordenadas y sus dimensiones:
Coordenada por de imagen1:
x1=document.all['foto1'].style.left
Coordenada y de imagen1:
y1=document.all['foto1'].style.top
Ancho de imagen1:
ancho1=document.all['foto1'].style.width
Alto de imagen1:
alto1=document.all['foto1'].style.width
Y para la imagen2, lo mismo:
Coordenada x de imagen2:
x2=document.all['foto2'].style.left
Coordenada y de imagen2:
y2=document.all['foto2'].style.top
Ancho de imagen2:
ancho2=document.all['foto2'].style.width
Alto de imagen2:
alto2=document.all['foto2'].style.width
Cuando sepas la posición y las dimensiones de cada foto puedes obtener si la imagen 1 toca a la imagen 2 comparando si la parte derecha de la imagen 1, es decir x1+ancho1, es igual a la posición de la parte izquierda de la imagen 2 es decir x2.
Dependiendo de como se muevan las imágenes deberás también tener en cuenta las coordenadas y y los altos de las capas para comprobar que están a la misma altura.
Con los datos que me das no sé el movimiento que realizan las imágenes, ni el número de imágenes, ni si la imagen 2 puede estar detrás de la 1 o siempres la imagen 2 estará más avanzada, ... y por tanto no puedo decirte cual sería la función que compararía las coordenadas para saber si las imágenes entran en contacto. Pero supongo que si has capatado la idea que quería transmitirte podrás adptarla a tus propósitos. Siento mucho no poder darte una respuesta más amplia.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas