Hallo,
function mouse_pos(evt)
{
var pos = { left: evt.clientX, top:evt.clientY };
{ eigenschaft : wert, eigenschaft : wert, ... } ist ein sogenanntes Object-Literal, es erzeugt ein allgemeines Objekt, das als Container für das Wertepaar der Mauszeigerposition dient. Die Funktion gibt dieses Object dann als Ergebnis zurück.
> ~~~javascript
function show_mouse_pos ()
> {
> var p = mouse_pos(???);
> alert(???);
> }
mouse_pos braucht wie gesagt das Event-Objekt als Parameter. show_mouse_pos muss also als Handlerfunktion für ein Click-, Mousemove-, Mouseover- oder Mouseout-Ereignis registriert sein.
Dokumentweit geht das Registrieren z.B. so:
document.onmousemove = show_mouse_pos;
Bei einem Einzelelement entsprechend:
document.getElementById("irgendeineID").onmouseover = show_mouse_pos;
mouse_pos gibt wie gesagt ein Object zurück mit zwei Eigenschaften namens top und left. Auf Eigenschaften eines Objektes greifst du wie gewohnt über den Punkt-Operator nach dem Schema objekt.eigenschaft zu.
function show_mouse_pos (evt) {
if (!evt) evt = window.event;
var p = mouse_pos(evt);
alert(p.left + " " + p.top);
}
Mathias