Stefan Link: Window-Event X und Y

Hallo community,

auf SELFHTML findet man zu dem window.event.x und window.event.y ein hübsches Beispiel, wie man die Koordinaten von einem Mausklick relativ zum Elternobjekt auffangen kann:

<html><head><title>Test</title>
<script language="JScript">
function Coords()
 {
  alert("x = " + window.event.x + "/ y = " + window.event.y);
 }
</script>
</head><body>
<div style="position:absolute; left:10px; top:140px;
background-color:#FFFFE0">
<p onClick="Coords()">Klick mich</p>
</div>
</body></html>

Das Problem ist, dass wie im Kommentar auf SELFHTML beschrieben sich die Positionsangabe auf das absolute Elternelement, also das Window selbst bezieht. Wie bekomme ich das denn hin, dass sich der Klick bezogen auf das absolute Elternelement (hier also die <div>) bezieht?

Vielen Dank für Eure Hilfe!
Grüße
Stefan

  1. Hallo!

    genu dieses Probelm hatte ich auch. Ich habs nur dadurch gelöst, dass ichn popup dafür benutzt hab...bei mir ging das ganz gut
    aber ich weiß auch keine Lösung
    wär erfreut wenns jemand wüsste!

    Andy

  2. Hallo Stefan Link

    Hallo community,

    auf SELFHTML findet man zu dem window.event.x und window.event.y ein hübsches Beispiel, wie man die Koordinaten von einem Mausklick relativ zum Elternobjekt auffangen kann:

    Hier http://javascript.jstruebig.de/exp/mouse-test.html kannst du sehen, welche Mausevents welche Auswirkungen haben.

    Für dein Problem ist es, in Mozillabrowsern [Event].layerX/Y und für den IE und Opera offsetX/Y

    Struppi.

    1. Hi Struppi,

      sprich ich muss noch herauslesen, welchen Browser mein Client nimmt. Okidoke, dann werd ich das mal versuchen.

      Danke!
      Gruß
      Stefan

      Hallo Stefan Link

      »

      Hier http://javascript.jstruebig.de/exp/mouse-test.html kannst du sehen, welche Mausevents welche Auswirkungen haben.

      Für dein Problem ist es, in Mozillabrowsern [Event].layerX/Y und für den IE und Opera offsetX/Y

      Struppi.

      1. hi,

        bitte unterlasse das ToFu, </faq/#Q-09b>

        Für dein Problem ist es, in Mozillabrowsern [Event].layerX/Y und für den IE und Opera offsetX/Y

        sprich ich muss noch herauslesen, welchen Browser mein Client nimmt. Okidoke, dann werd ich das mal versuchen.

        aber bitte nicht, in dem du irgendetwas unsinniges wie beispielsweise den user agent string ausliest, sondern in dem du sie anhand ihrer fähigkeiten bzw. vorhandenen objekte und deren eigenschaften unterscheidest.

        gruß,
        wahsaga

        --
        "Look, that's why there's rules, understand? So that you _think_ before you break 'em."