Hallo,
ich habe den gesamten Thread gelesen, war zwischendurch sehr verwirrt und weiß jetzt noch immer nicht ganz, ob ich Dein Problem genau verstanden habe.
Ich vermute aber, daß Du mit einem ähnlichen Problem kämpfst, mit dem ich es auch schon zu tun hatte, und habe einfach einmal folgende Mini-Testseite erstellt, um Dir einen Lösungsansatz zu zeigen, der mich bei meinem Problem weitergebracht hat:
<html>
<head>
<title>Test</title>
<script type="text/javascript">
function TestClass() {
this.className = 'TestClass';
this.doSomething = function(testParam) { alert('testParam: '+testParam); }
this.init = function() {
var methodRef = this.doSomething;
document.getElementById('testLink').onclick = function () { methodRef('foo'); }
}
}
var myTestObj = new TestClass();
</script>
</head>
<body onload="myTestObj.init();">
<a href="#" id="testLink">Test</a>
</body>
</html>
Dazu empfehle ich noch die Lektüre folgender Seiten: http://jibbering.com/faq/faq_notes/closures.html#clExCon und http://neo.dzygn.com/archive/2004/05/preserving-scope-in-javascript.
Hoffe, das geht jetzt nicht völlig an Deinem Problem vorbei und hilft Dir weiter.
By the way: ich hoffe, daß ich es schaffe, meine JS-Bibliothek, die vor allem Lösungen für die Event-Behandlung liefert, noch in diesem Quartal dokumentiert ins Netz zu stellen.
Ciao,
Andreas
--
"Das Corporate Design für das Internet sieht eine Reihe von Grafikelementen vor, die die Optik der Webseite visuell und funktionell beeinflussen." - (Zitat aus dem "Styleguide Corporate Design" eines großen Konzerns...)