Hallo,
[1] elem.addEventListener(eventType, functionName, useCapture) // bzw. IE-Variante
Waehrend man bei [2] und [3] ja problemlos Parameter mitschicken kann, ist mir nicht klar, wie das bei [1] funktionieren soll.
Ich würde sagen, das kommt auf die Art der Parameter an. Gegebenenfalls kann man diese einfach ans elem anhängen, anstatt im schlimmsten Fall immer neue Funktionen zu erzeugen.
elem.addEventListener(eventType, function() {
function(args);
}, useCapture);
Hier müsste man darauf achten, gegebenenfalls das Eventobjekt durchzureichen. Außerdem zeigt »this« in der zweiten Funktion nicht mehr auf elem, wodurch man im IE keinen zuverlässigen Zugriff auf elem mehr hat. Das kann man nur umständlich mit call() lösen:
elem.addEventListener(eventType, function (e) {
func.call(elem, e || window.event, nochEinParameter, undNochEiner, ...);
}, false);
Ist nicht wirklich praktikabel, deshalb würde ich erst einmal nach einer anderne Lösung suchen.
Mathias