Das DOM Events Modul
Seminar XML |
DOM - Das XML Document Object Model |
Die Bestandteile des DOM |
nächstes Unterkapitel : DOM Traversal
Beschreibung :
Eines der Ziele, die mit dem DOM Events Modul verfolgt werden, ist, die
Definition eines generischen Event-Systems. Es werden Schnittstellen zur
Registration von Eventhandlern definiert und der Eventflow durch die Dokument-Struktur
beschrieben. Außerdem wird ein Standartset von Event-Handlern beschrieben,
die zum einen auf User Eingaben und zum anderen auf Verändrungen der
Dokument-Struktur reagieren.
Ein weiteres Ziel wird der Abwärtskompatibilität gewidmet.
Das DOM Event Modul, welches erst mit DOM-Level-2 eingeführt wurde,
unterstützt allgemeine Teile des alten DOM-Level-0 Event-Systems.
Die Intention liegt hierbei bei der Unterstützung von älteren
Browsern, bzw. Skripten die für dieses System entwickelt worden sind.
Es wird deutlich in der Spezifikation darauf hingewiesen, das dieses Ziel
wahrscheinlich nicht komplett realisiert werden kann.
Struktur des DOM Envent Moduls
:
EventTarget :
Wenn eine DOM Implementation das DOM Event Modul unterstüzt, mussen
alle nodes das EventTarget-Interface implementieren. EventTarget verwaltet
über die Methoden "addEventListenet" und "removeEventListener" die
Menge an EventListenern in einem Knoten. Doppelte Vorkommen von identischen
EventListenern werden automatisch gelöscht. Trifft ein Event bei dem
Weg durch die Baumstruktur auf ein EventTarget, so werden alle dort verzeichneten
EventListener getriggert.
EventListener :
Über die EventListener-Schnittstelle bekommt der Anwender Zugriff
auf das EventSystem. Alle Event Behandlungsroutinen, die ein Anwender entwickelt,
müssen dieses Interface implementieren. Damit kann dann ein neuer
EventListener einem EventTarget hinzugefügt werden.
Werden Nodes geklont (über die cloneNode Routine) werden die Einträge
im EventTarget nicht beachtet.
Event :
Das Event-Interface enthält Informationen, die für den Event-Handler
wichtig sind. In der nicht abgeleiteten Fassung werden Attribute definiert,
die aussagen, woher das Event kommt und wohin es geht. Außerdem werden
Angaben darüber gemacht, welche Art des EventFlow das Event verfolgt
(Bubbling, Capture).
Das DOM sieht folgende grundlegende Events vor :
UIEvent :
Das User-Interface Event wird über die Benutzer-Schnittstelle ausgelöst.
Mögliche Ereignisse sind :
-
DOMFocusIn
-
DOMFocusOut
-
DOMActivate
MouseEvent :
Mouseevents treten bei der Benutzung der Maus durch den Benutzer auf. Das
MouseEvent-Interface enthält dabei Daten über die Maus Position
bei auslösen des Ereignisses, sowohl relativ zur DOM-Oberfläche,
als auch relativ zum gesamten Bildschirm. Außerdem werden Informationen
über eventuell gedrückte Maustasten, bzw. Sondertasten der Tastatur
(Alt, Strg, etc.) übergeben. Mögliche Ereignisse sind :
-
click
-
mousedown
-
mouseup
-
mouseover
-
mousemove
-
mouseout
MutationEvent :
Das MutationEvent wird ausgelöst, wenn Änderungen an der DokumentStruktur
aufgetreten sind. Das MutationEvent bietet die Informationen, die es ermöglichen
die geänderte Stelle in der Dokument-Struktur ausfindig zu machen.
Seminar XML |
DOM - Das XML Document Object Model |
Die Bestandteile des DOM |
nächstes Unterkapitel : DOM Traversal