Mausposition
Sandra
- javascript
0 Robert Bamler0 Norbert Klein0 Sandra
0 Gandalf
Hallo zusammen,
hänge mal wieder an einer Kleinigkeit:
Mit 'event.clientX' kann man im IE doch die Mausposititon in Bezug auf die linke obere Ecke des Fensters berechnen lassen. Ich frage mich eben, ob ich die Mausposition auch in Abhängigkeit von einem ganz bestimmten Objekt berechnen kann.
Also angenommen, ich klicke in ein Bild hinein. Nun möchte ich die Position der Maus in Bezug auf die linke obere Ecke des Bildes wissen.
Geht sowas? Wenn ja, wer kann mir mit einem Tip helfen? Ich habe leider bisher für meine Zwecke nichts Brauchbares gefunden... :-(
Vielen Dank schonmal
MissLilly
Hallo,
Mit 'event.clientX' kann man im IE doch die Mausposititon in Bezug auf die linke obere Ecke des Fensters berechnen lassen. Ich frage mich eben, ob ich die Mausposition auch in Abhängigkeit von einem ganz bestimmten Objekt berechnen kann.
Also angenommen, ich klicke in ein Bild hinein. Nun möchte ich die Position der Maus in Bezug auf die linke obere Ecke des Bildes wissen.
Das geht in diesem Fall mit offsetX bzw. offsetY
</selfhtml/javascript/objekte/event.htm#offset_x_y>
Für NC gibt es dafür layerX bzw. layerY
</selfhtml/javascript/objekte/event.htm#layer_x_y>
Das wurde aber seltsamerweise in NC6 abgeschafft (wie man auf die Idee kommen kann, in einer höheren Browserversion bereits eingeführte Möglichkeiten wieder abzuschaffen, werde ich nie verstehen.)
Robert
http://www.designauswahl.here.de
mit kostenlosem Webseiten-Generator ROBE.dit
[more than a HTMLE.dit]
Hallo,
Das geht in diesem Fall mit offsetX bzw. offsetY
</selfhtml/javascript/objekte/event.htm#offset_x_y>
vielen Dank für deinen Tip. So habe ich es allerdings auch schon probiert. Bringt mich in meinem Fall aber leider nicht weiter. Ich möchte mich zwar auf ein ganz bestimmtes Objekt beziehen, habe aber innerhalb dieses Objekts auch noch andere.
Beispiel:
Ich habe auf meiner Seite ein großes Div, auf welches ich meine Mausposition immer beziehen möchte. Klicke ich auf ein Div oder ein anderes Objekt, das innerhalb dieses großen Div liegt, bekomme ich mit offsetX oder offsetY doch immer die Position in Abhänigkeit des angeklickten Objekts, oder??! Und genau das möchte ich nicht!!!
Ist mein Problem jetzt vielleicht klarer? Hast Du mir viellicht noch einen Tip?
Gruß
Sandra
Hallo Sandra,
für Netscape 6 und MSIE hätte ich da folgendes:
bei Deinem <div id="grossesDiv" ..> welches aber irgendwo liegen kann, hilft nur folgendes:
function mein func(eventObj) {
var mx = 0;
var my = 0;
var div_x = document.getElementById('grossesDiv').offsetLeft;
var div_y = document.getElementById('grossesDiv').offsetTop;
if (navigator.appName=="Netscape") {
mx = eventObj.pageX;
my = eventObj.pageY;
} else{
mx = window.event.clientX;
my = window.event.clientY;
}
var rel_x = mx - div_x;
var rel_y = my - div_y;
}
Gruß,
Andreas
Geht sowas? Wenn ja, wer kann mir mit einem Tip helfen? Ich habe leider bisher für meine Zwecke nichts Brauchbares gefunden... :-(
Hmm, dann hast du wohl nich in selfhtml nachgeguckt:
http://selfhtml.teamone.de/javascript/objekte/event.htm#x_y
Gruß
Norbert
Hallo Norbert,
Hmm, dann hast du wohl nich in selfhtml nachgeguckt:
Doc habe ich, aber vielleicht am falschen Ende ;-)
Da steht, dass das Eltern-Element absolut positioniert sein muss. Das ist bei mir leider nicht der Fall (sondern relativ) und verursacht auch leider mein Problem. Gibt es denn dann überhaupt eine Lösung?
Danke
Gruß
Sandra
Gruß
Norbert
Verstecke das bild im einem div...