Haz clic en una imagen, consigue las coordenadas


5

Sé que se puede hacer e incluso tengo una vaga idea de cómo hacerlo, pero deja de ser vago.

Tengo una etiqueta de imagen HTML estándar con una imagen, de 100 por 100 píxeles. Quiero que las personas puedan hacer clic en la imagen y que pasen las X e Y que hacen clic en una función.

Las coordenadas deben ser relativas a la imagen superior e izquierda.

Gracias de antemano por cualquier ayuda.

+1

respuestas Este hilo exactamente el mismo <a href="http://bytes.com/forum/thread507079.html">question</a> Con más información <a href="http://www.quirksmode.org/js/events_properties.html#position">here</a> 21 ago. 082008-08-21 08:05:59

4

creo que estamos hablando:

<input id="info" type="image"> 

Cuando presentado, hay valores de formulario para la coordenada X e Y según el ID de elemento de entrada (info.x y info.y en este caso).

http://www.w3.org/TR/REC-html40/interact/forms.html#h-17.4.1


0

de lo que usted describe usted debe registrarse para el evento de imagen del ratón, para este caso se debe tener el evento de botón de imagen del ratón.

en la función que debe utilizar

Point mousePoint = e.GetPosition(this); 

que le dará la posición del ratón de acuerdo al principio de puntos izquierda píxeles int.

que en el mousePoint puede imprimir la información X e Y.


0

Vuelva a colocar la lona con su imagen y funcionará de la misma

let img = document.getElementById("canvas"); 
 

 
img.x = img.getBoundingClientRect().left; 
 
img.y = img.getBoundingClientRect().top; 
 

 
function click(e) { 
 
    document.getElementById("output").innerHTML = "X coords: " + (e.clientX - img.x) + "<br> Y coords: " + (e.clientY - img.y); 
 
} 
 

 
img.addEventListener("click", click);
<!--- Like a image ---> 
 
<canvas id="canvas" width="100" height="100"></canvas> 
 
<p id="output"></p>