Hi
Hand auf herz, wann hast du das letzte mal eine Funktion dynamisch redefiniert? Und in welcher Sprache?
In Javascript ist dies öfters nötig, allerdings ist dort das Verhalten anders
Mir ist da sklar, aber Thomas sollte das beantworten, du Streber ;)
function get(val, el) {
return function() { alert(val + ':' + el) };
}
function get2(val, el) {
function f() { alert(val + ':' + el) };
return f;
}window.onload = function() {
var all = document.getElementsByTagName('*');
for(var i = 0; i < all.length; i++) {
var el = all[i];
el.onclick = get(i, el);
// el.onclick = get2(i, el);
}}
Yep, das liegt daran das Funktionen in JS selbst Objekte sind , wenn man sie "stringified" bekommt man sogar den Body geliefert.
Bye
Kurt