Wie kann ich die Maus-Koordinaten relativ zu einem übergeordneten div? Javascript

Moment habe ich ein div angelegt, mit anderen Elementen innerhalb der it.

Etwas ähnliches wie unten;

<div id="container" style="position: relative; width: 500px; height: 500px;">
     <div style="position: absolute; left: 50px; top: 50px;"></div>
     <div style="position: absolute; left: 100px; top: 100px;"></div>
</div>

Ich versuche, die Maus-position relativ zu dem div mit der id container.

Bisher habe ich diese;

function onMousemove(event) {

    x = event.offsetX;
    y = event.offsetY;
};

var elem = document.getElementById("container");
elem.addEventListener("mousemove", onMousemove, false);

Dies funktioniert gut, wenn das div-Element mit der id container hat keine Kinder. Wenn die container div Kinder hat, bekommt es die Maus-Koordinaten relativ zum Kind eher als die Eltern.

Was ich durch dieses bedeute, ist, wenn die Maus an einer position von x: 51, y: 51 relativ zum übergeordneten div, wäre es tatsächlich zurück x: 1, y: 1 relativ zum child-div, mit der html-oben angegeben.

Wie kann ich erreichen, was ich will, keine Bibliotheken bitte.

BEARBEITEN

tymeJV hat freundlichst ein jsfiddle, was geschehen ist oben.

http://jsfiddle.net/N6PJu/1

  • Ich habe verspottet ein Turnschuh bis: jsfiddle.net/N6PJu/1 - Ist dieser zu sehen, Ihre Fehler richtig?
  • Ja, dass ist das, was passiert ist, ich danke Ihnen für das 🙂
InformationsquelleAutor GriffLab | 2013-04-22
Schreibe einen Kommentar