Sven Rautenberg: Dynamischer Funktionsaufruf

Beitrag lesen

Moin!

... und bekomme die zwei Fehlermeldungen Objekt erwartet (s. Skript)

Ja, ist ja auch logisch. Du definierst hier den Funktionsaufruf für mouseover und mouseout:

<a href=http://www.ich.de onmouseover="on(t1);" onmouseout="off(t1);">

und willst die Funktionen on und off aufrufen.

Du definierst aber die Funktionen showlayer und hidelayer. Na, sagt dir das was? Wenn du Funktionen aufrufst, die nicht definiert werden, weil die, die definiert werden, andere Namen haben, ist das logischerweise ein Fehler.

onmouseover="showlayer()" onmouseout="hidelayer()" wäre besser gewesen.

Und dann noch ein Fehler: Dein aufruf onmouseover="on(t1)" übergibt der Funktion den Inhalt der Variablen namens t1. Die wird vermutlich noch garnicht existieren - auch deshalb gehts nicht.

onmouseover="showlayer('t1')" onmouseout="hidelayer('t1')" ist da besser.

Aber das nächste hat auch funktioniert, wenn auch ohne dynamischen Aufruf:

Ja, und? Es funktioniert vermutlich nur im IE. Im Opera sicher nicht, und sicher auch nicht in Netscape (egal ob Version 4 oder 6).

Wenn du programmierst, mußt du natürlich Fehler vermeiden, sonst geht's nicht. :)

- Sven Rautenberg