Hallo,
Wie kann ich denn Variablen an die anonyme Funktion übergeben?
Wenn ich es richtig verstehe, ist bindAsEventListener wohl der Schlüssel, aber ich kapiere es einfach nicht. Und zudem erscheint mir das dort gegebene Beispiel auch falsch zu sein.
Mit bindAsEventListener liegst du richtig, auch was die Weitergabe von Daten an die Funktion angeht. Das Beispiel ist tatsächlich fehlerhaft und etwas hochgestochen. Ein einfacheres Beispiel zur Variablen-Übergabe:
var obj = { name: "A nice demo" };
function handler (e, arg1, arg2, arg3) {
alert(this.name + "\narg1: " + arg1 + "\narg2: " + arg2 + "\narg3: " + arg3);
}
Event.observe(window, "load", function () {
Event.observe(document.body, "click", handler.bindAsEventListener(obj, 1, 2, 3));
});
Mathias