FraFu: dynamische eventhandler

Beitrag lesen

Hallo!

Alles zurück! Das funktioniert nur in diesem speziellem Fall, da this sowieso übergeben wird!

Funktionieren tut das so oder so. Das Beispiel zeigt aber darüber hinaus wie du einen x-beliebigen Parameter übergeben könntest.

Ja, du hast recht. Als ich gerade versucht habe ein ganz einfaches Beispiel als "Beweis" zu bauen, bin ich auf meinen Denkfehler drauf gekommen.

Beispiel:
Zum Button btn soll ein onClick Handler hinzugefügt werden.

  
function init() {  
 var btn=document.getElementById('btn');  
 var i=5;  
 btn.onclick=function(){alert(i);};  
 i=10;  
}  

Beim Hinzufügen des Eventhandlers hat i den Wert 5, beim anklicken aber 10. Mit diesem einfachen Beispiel ist das Verhalten völlig logisch. In meinem Fall hab ich aber kein Skalar als Parameter, sondern ein Objekt, das später auch noch verändert wird.
Darum bin ich nicht gleich draufgekommen, wo mein Fehler liegt.

Umgelegt auf dieses einfache Beispiel bin ich davon ausgegangen, dass alert mit dem Wert 5 aufgerufen wird. Ist natürlich Blödsinn.

mfg
  frafu