onmousemove

Bradlay

Mitglied
Ich habe mir letztens ein Buch gekauft, welches eine einführung in JavaScript geben soll. Nur leider ist teilweise ziemlich knapp gehalten, was mir bei einem Script kopzerbrechen bereitet:

Code:
<body>
<div style="position:absolute;" id="lay1">Ich folge der Maus!</div>
<script language="JavaScript">
<!--
 document.onmousemove = verschiebe;

 function verschiebe(e)
 {
  a = document.getElementById('lay1');
  a.style.left = (parseInt(e.pageX)+20)+'px';
  a.style.top = (parseInt(e.pageY)+20)+'px';
 }
//-->
</script>
</body>
Das Script ist für Firefox, Netscape und Opera und funktioniert auch.
Aber ss geht mir um die Variable "e" die in der Funktion "verschiebe" angezeigt wird. Sie wird ja beim Aufruf der Funktion nicht mit übergeben, wird aber trotzdem benötigt (ich habe es ausprobiert und der Name der Variable muss nicht zwingend "e" sein).
Meine Frage: was wird da übergeben? Ich kann das so nicht ganz nachvollziehen.

Ich habe auch noch ein Script für den InternetExplorer und dabei wird keine Variable übergeben. Das verwirrt mich doch etwas...:confused::confused::confused:
Code:
<body>
<div style="position:absolute;" id="lay1">Ich folge der Maus!</div>
<script language="JavaScript">
<!--
 document.onmousemove = verschiebe;
 function verschiebe()
 {
  a = document.getElementById('lay1');
  a.style.left = (parseInt(window.event.offsetX)+20)+'px';
  a.style.top = (parseInt(window.event.offsetY)+20)+'px';
 }
//-->
</script>
</body>

Wäre toll, wenn mir da jemand weiterhelfen und das erklären könnte.
Danke schon mal im Vorraus...
 
Moin,

das, was dort übergeben wird, ist das Event-Objekt.

Im InternetExplorer ist das global verfügbar über window.event.
In anderen Browsern ist es als Funktionsargument verfügbar, wenn der Funktion sonst keine Argumente übergeben wurden, und wenn der Funktionsaufruf Resultat einer Event-Überwachung ist.
 

Neue Beiträge

Zurück