Java Reference
In-Depth Information
der referenzierten Funktion das Ereignisobjekt. Das ist eine Vorgabeeinstellung in diesem
Ereignisbehandlungsmodell.
Ein Beispiel zur Auswertung des Tastaturcodes - netscape-Modell
Im ersten Beispiel soll die folgende einfache Situation realisiert werden: Der Besucher
drückt eine beliebige Taste und der Tastaturcode der gedrückten Taste wird mittels
getElementById().innerHTML in der Webseite angezeigt. Das ist die HTML-Seite für das
Netscape-Modell (kap9_1.html) , in der die Ereignisbehandlung per Funktionsreferenz an
das window -Objekt gebunden wird:
Listing 9.4■ Auswerten des Ereignisobjekts nach dem Ereignismodell von Netscape
...
<body>
<h1>Drücken Sie eine beliebige Taste!</h1><div id="antwort"></div>
</body>
<script type="text/javascript">
window.onkeypress = function( ev ) {
document.getElementById("antwort").innerHTML =
"Gedrückter Tastencode: " + ev.which ;
}
</script>
</body>
</html>
Im Skript wird das Ereignis onkeypress beim window -Objekt überwacht (Drücken irgendeiner
Taste). Wenn der Anwender eine Taste drückt, wird die anonyme Callback-Funktion aufgerufen.
 Bild 9.1■
Eine Taste wurde gedrückt.
Der erste Parameter an die Funktion ist eine Referenz auf das Ereignisobjekt. Dieses steht
im Netscape-Modell nicht automatisch unter einem globalen Token wie event zur Verfü-
gung (wie es im Microsot-Modell der Fall ist, was wir gleich sehen werden), sondern der
Zugrif muss über den ersten Parameter der Behandlungsfunktion erfolgen. Das Netscape-
Modell sorgt dafür, dass durch das Binden der Funktion an den JavaScript-Eventhandler per
Funktionsreferenz der erste Parameter-Token automatisch als Referenz auf das Ereignisob-
jekt zu verstehen ist. Das gilt wie schon erwähnt auch bei der Notation einer anonymen
Funktion, die einem Eventhandler zugewiesen wird. Die Eigenschat which des Ereignisob-
jekts enthält den Tastaturcode. In der Funktion wird der aktuelle Wert bei jedem Tasten-
druck in dem <div> -Element ausgegeben (der numerische Code, der über die Eigenschat
which verfügbar ist).
Informationen zu einem Mausklick auswerten - netscape-Modell
Schauen wir uns noch ein Beispiel mit der Auswertung anderer Eigenschaten des Ereignis-
objekts an, die in allen Browsern unterstützt werden, die mit dem Netscape-Ereignismodell
arbeiten. Hier ist zuerst die HTML-Datei (kap9_2.html) , in der dieses Mal die Ereignisbe-
Search WWH ::




Custom Search