Der Martin: Problem mit eventhandler/ Warum geht's nur nicht???

Beitrag lesen

Moin,

also: zunächst einmal solltest du in dieser Zeile das this weglassen (dann funktioniert es erstmal schon im IE)

<img id="pic1" src="http://src.selfhtml.org/logo.gif" onclick="Coords(this)">

  
wobei ich ergänzen darf: Es ist oft eine gute Idee, im Eventhandler gleich eine Referenz auf das betroffene Objekt mitzugeben. Wenn die aufgerufene Funktion aber stattdessen ein Event-Objekt erwartet ...  
  

> Im FF funktioniert es dann allerdings immer noch nicht.  
  
Wer sagt das? Zumindest meine beiden Firefoxe 1.0 und 1.0.4 reagieren anstandslos auf einen so notierten onclick-Handler.  
  

> P.S.: ARGH: bloss gut, dass du die entscheidende Zeile schon hingeschrieben hattest, denn ich hätte natürlich versucht, den eventhandler so zu "deklarieren":  
>   
> `document.getElementById("pic1").onclick="Coords();";`{:.language-javascript}  
>   
> Kann man denn ahnen, dass hier nur der Funktionsname ohne irgendwelche Klammern, Semikola, usw anzugeben ist? - naja, Javascript halt...  
  
Ja, das kann man ahnen, weil es nur konsequent ist: Schließlich willst du ja nicht die Funktion Coords() aufrufen und dem onclick-Handler das Ergebnis zuweisen (abgesehen davon, dass Dieters Funktion nicht einmal ein Ergebnis zurückgibt), sondern eine Referenz auf die Funktion selbst.  
  
Schönen Tag noch,  
 Martin  

-- 
Wenn du beim Kochen etwas heißes Wasser übrig hast, friere es ein.  
Heißes Wasser kann man immer gebrauchen.