Möglichkeiten zur Interaktion
<< < > >> > Hauptteil > Interaktion > Möglichkeiten

Interaktivität ist ein wichtiger Bestandteil der Webtechnologie und Sprachen wie Javascript sind bereits nicht mehr wegzudenken. So gut wie jede Benutzerinteraktion kann erkannt und auf verschiedenste Art und Weise beantwortet werden. Durch das DOM (Document Object Model) ist es möglich, auf die Elemente und Attribute eines Dokuments zuzugreifen und diese zu modifizieren.

Auch SVG bietet ein Event-Modell und ein SVG-DOM an, der dem W3C-DOM sehr ähnlich ist, d. h. diejenigen, die bereits Erfahrung mit Javascript oder VBScript in HTML-Seiten gesammelt haben, werden viele Ähnlichkeiten feststellen.

SVG ermöglicht zwei Arten des Scriptings. Zum einen kann man Skripte direkt mit in das SVG-Dokument einbinden. Diese werden dann vom Browser oder SVG-Viewer interpretiert. Hierzu wird die Sprache ECMAScript verwendet, ein Javascript-Dialekt. Zum anderen können externe Skripte, z.B. Skripte in einer HTML-Seite, die auch das SVG-Dokument einbindet, oder Programme auf das DOM der SVG zugreifen. Man kann theoretisch mit jeder objektorientierten Sprache auf das SVG-DOM zugreifen. Mit Java kann man z.B. das Batik Toolkit von Apache benutzen, das das Manipulieren, Erstellen und Anzeigen von SVG ermöglicht.

In den folgenden Kapiteln soll zuerst das interne Scripting vorgestellt werden, das Event-Modell und das DOM. Das externe Scripting ist dem internen sehr ähnlich und darum braucht am Ende nur kurz das externe Skripting vorgestellt werden.

Besonders in diesen Kapiteln muß bedacht werden, dass es sich bei diesen Seiten um ein Tutorial und nicht um eine Referenz handelt. Es kann und soll nicht das ganze SVG-DOM vorgestellt werden, denn dieses ist sehr ausführlich und auf den Seiten vom W3C findet sich eine Referenz. Das Tutorial stellt die Funktionen und Objekte vor, mit denen man im Normalfall auskommt.

Die Syntax des internen Skriptings entspricht der Javascript-Syntax, das Wissen um diese wird vorrausgesetzt und daher nicht noch einmal erklärt.