Ik loop tegen een probleem aan met de setTimeout functie. Het volgende stuk code heb ik:
Resultaat: b kan niet gevonden worden.
Het probleem snap ik, setTimeout wil b aanroepen, maar mist de context waarin b aangeroepen moet worden.
Waar ik niet uit kom is, hoe los ik dit op? Is het wel op te lossen?
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
| var X = function() { return { a : function () { window.setTimeout("b", 5000); }, b : function () {}; } }(); window.onload = X.a(); |
Resultaat: b kan niet gevonden worden.
Het probleem snap ik, setTimeout wil b aanroepen, maar mist de context waarin b aangeroepen moet worden.
Waar ik niet uit kom is, hoe los ik dit op? Is het wel op te lossen?
[ Voor 1% gewijzigd door rrrandy op 25-06-2009 22:11 . Reden: stelletje muggenzifters :P ]