Fraga: Mausposition relativ zu einem Element

Beitrag lesen

Moin,

Ich benötige die Mausposition relativ zu einem Element. Dabei handelt es sich um ein <tr>-Tag. Alle Lösungsansätze, die ich bisher gefunden habe, haben entweder nicht funktioniert oder man musste per CSS die position auf relative setzen, was jedoch dazu führt, dass der Rahmen zwischen den Tabellenzeilen nicht angezeigt wird.

Diese Anleitung kannst du zum Ermitteln von Elementpositionen nutzen, zum Ermitteln der Mausposition sind die <http://de.selfhtml.org/javascript/objekte/event.htm@title=entsprechenden Event-Eigenschaften> hilfreich.

relative Position zum Element = Position des Mauszeigers - Position des Elements

Grüße Marco

Wenn ich ereignis.clientY-getPosY(element) rechne, wobei getPosY(element) folgendermaßen ausseht:

function getPosY(element){
         var elem = element;
         var tagname = "";
         var y = 0;

while ((typeof(elem)=="object")&&(typeof(elem.tagName)!="undefined")){
              y+=elem.offsetTop;

tagname=elem.tagName.toUpperCase();

if (tagname=="BODY")
                   elem=0;

if (typeof(elem)=="object" && typeof(elem.offsetParent)=="object")
                   elem=elem.offsetParent;
          }
          return y;
}

erhalte ich als Ergebnis immer negative Zahlen. Zu erwähnen wäre vielleicht, dass man auf der Seite nach unten scrollen muss, um das Element zu erreichen.