2010-09-09 15 views
10

Mam następujący kod do śledzenia, gdzie użytkownik kliknie na obrazek:Draw kropki na obrazie przy użyciu jQuery

<img src="images/test.jpg" id="testimg" /> 

    <script type="text/javascript"> 
     $("#testimg").click(function (ev) { 
      mouseX = ev.pageX; 
      mouseY = ev.pageY 
      alert(mouseX + ' ' + mouseY); 
     }) 

    </script> 

Co chciałbym zrobić to, gdy użytkownik kliknie na obrazek, chcę narysuj kropkę na współrzędnych X, Y kliknięcia.

Czy ktoś może mi doradzić, jak to zrobić?

Odpowiedz

13
<script type="text/javascript"> 
     $("#testimg").click(function (ev) { 
     mouseX = ev.pageX; 
     mouseY = ev.pageY 
     //alert(mouseX + ' ' + mouseY); 
     var color = '#000000'; 
     var size = '1px'; 
     $("body").append(
      $('<div></div>') 
       .css('position', 'absolute') 
       .css('top', mouseY + 'px') 
       .css('left', mouseX + 'px') 
       .css('width', size) 
       .css('height', size) 
       .css('background-color', color) 
     ); 
    }) 
</script> 

Będzie to narysować czarny piksel 1x1 div.

+0

+1 To działało ładnie, dzięki. –

+0

co jeśli testimg znajduje się w innym pozycjonowanym pojemniku? jak to zrobić, aby zamiast tego ustawił kropkę względem okna? – butterywombat

+0

Jeśli zmienisz rozmiar okna lub jest przewijanie, myślę, że miałoby to jakiś problem. – svirk

Powiązane problemy