Funktionen - Events

Funktionen und Event-Handler

Funktionen

Man kann in JavaScript wie auch in anderen Sprachen seine eigenen Funktionen schreiben oder vorhandene überschrieben werden. Diese sind dann wie die Vordefinierten Fkt. überall in Quelltext aufrufbar. Funktionen beinhalten vorallem Befehle zur Ausführung von Ereignissen oder Berechnungen.
Es können auch Werte übergeben und zurückgegeben werden.

Syntax:
function Funktionsname(Parameter1,Parameter2...)
{
	Anweisung
	return Rückgabewert;
}

Öffentliche und Private Funktionen

Bei selbsterstellten Objekten kann man Eigenschaften und Methoden als öffentlich(global) oder als privat definiert werden. Diese Unterscheidung bezieht sich auf ihre Verfügbarkeit, das heißt aus welchem Bereich der Zugriff erlaubt ist. Private Eigenschaften können nur aus der Konstruktor-Funktion und aus objekteigenen Methoden heraus aufgerufen und editiert werden. Der Zugriff von außerhalb des Objekts ist nur bei öffentlichen Eigenschaften möglich. Dementsprechend können öffentliche Methoden – die letztlich nur besondere Eigenschaften sind – aus jedem Kontext heraus, in dem das Objekt verfügbar ist, ausgeführt werden. Methoden werden zudem anhand ihrer Zugriffsrechte auf objekteigene Eigenschaften und Methoden unterschieden. Private Methoden haben prinzipiell Zugriff auf alle öffentlichen und privaten Eigenschaften und Methoden. Dasselbe gilt für sogenannte privilegierte öffentliche Methoden. Im folgenden Beispiel werden die verschiedenen Eigenschafts- und Methodentypen veranschaulicht.

function MeinObjekt (parameter) {
	/* parameter ist eine private Eigenschaft */

	/* Speichere eine Referenz auf das aktuelle Objekt in
		der privaten Eigenschaft self */
	var self = this;

	/* private Eigenschaft */
	var private_eigenschaft = "privat";

	/* öffentliche Eigenschaft */
	this.oeffentliche_eigenschaft = "öffentlich";

	/* private Methode */
	var private_methode = function () {
		window.alert(private_eigenschaft + " 
" + self.oeffentliche_eigenschaft); }; /* privilegierte öffentliche Methode */ this.privilegierte_methode = function () { window.alert(private_eigenschaft + "
" + this.oeffentliche_eigenschaft); private_methode(); }; }

Event-Handler

Event-Handler (Ereignisbehandler) sind wichtige Bindeglieder zwischen HTML und JavaScript. Diese sind meist Attribute von HTML-Tags und stehen für ein jeweiliges Anwenderereignis. Zum Beispiel in einem Button wird das Ereignis onclick mit einem Verweis auf eine angelegt JavaScript-Funktion geschrieben.

<input name="btn_click" type="button" onclick="click()">

Wenn der Button mehrere Anweisungen durchführen soll, schreiben Sie am besten in Ihr JavaScript mehrere Funtkionen, mit natürlich verschiedenen Namen, und lassen Sie ihn dann mit den passenden Events diese ausführen.

<input name="btn_click" type="button" onmousemove="faerben()" 
onclick="rechnen()">

Hier ein paar Events:

Event Bedeutung
onabort bei Abbruch
onblur beim Verlassen
onchange bei erfolgter Änderung
onclick beim Anklicken
ondblclick bei doppeltem Anklicken
onerror im Fehlerfall
onfocus beim Aktivieren
onkeydown bei gedrückter Taste
onkeypress bei gedrückt gehaltener Taste
onkeyup bei losgelassener Taste
onload beim Laden einer Datei
onmousedown bei gedrückter Maustaste
onmousemove bei weiterbewegter Maus
onmouseout beim Verlassen des Elements mit der Maus
onmouseover beim Überfahren des Elements mit der Maus
onmouseup bei losgelassener Maustaste
onreset beim Zurücksetzen des Formulars
onselect beim Selektieren von Text
onsubmit beim Absenden des Formulars
onunload beim Verlassen der Datei

Es gibt noch einige andere! Man muss aber beachten das Events nur bei bestimmten Elementen funktionieren.