molily: Eventhandler-Attribute erzeugen - IE+Opera wollen nicht

Beitrag lesen

hi,

[referenzaufelement].onclick = function(){ blah() };

In dem Fall wäre die »Container«-Funktion natürlich überflüssig und die Referenz auf das Funktionsobjekt blah reicht aus.

auch dann, wenn ich der funktion noch einen parameter übergeben möchte? (this in diesem falle)

Kommt eben auf den Parameter an und ob die Funktion auf dessen Daten nicht eleganter zugreifen kann. Sofern die Funktion als Parameter immer das Knotenobjekt empfangen soll, bei dem der Event passierte, kann natürlich auch direkt in der Funktion blah mit this gearbeitet werden. Das ist äquivalent zu Eventobjekt.target (DOM) bzw. Eventobjekt.srcElement (Microsoft).
Wenn du blah benutzt, um sie mit verschiedenen Parametern aufzurufen, kannst du ja das Eventobjekt durchreichen, dann hast du darüber alle Event-Eigenschaften:
Elementknoten1.onclick = function (e) { if (!e) e = window.event; blah(e, parameter1); };
Elementknoten2.onclick = function (e) { if (!e) e = window.event; blah(e, parameter2); };

Mathias