Autor | Zpráva | ||
---|---|---|---|
tuzticzka Profil |
#1 · Zasláno: 27. 8. 2008, 02:14:49
Ahoj, dělám si vlastní "dialogy" přes DIVy a mám na každm přes DOM vytvořený SPAN pro skrytí tohoto okénka(dialogu). Uvízl jsem na tom, jak ukazovat na, identifikovat, aktuální instanci toho objektu "okno" zvenčí, kterému ten křížek patří.... klíčové slovo this v tomto případě neoznačuje celou instanci jak bych potřeboval, ale jenom ten DIV s křížkem, na který se kliklo... Nenapadá vás co s tím? Díky moc za pomoc
... this.generujKrizek = function() { var krizek = document.createElement('SPAN'); krizek.className = "zavritOkno"; krizek.appendChild(document.createTextNode('X')); krizek.onclick = this.skryj; NejakyObjekt.appendChild(krizek); } ... |
||
peta Profil |
#2 · Zasláno: 27. 8. 2008, 07:42:42
tuzticzka
problem je v logice. This, jak pises, odkazuje na cely tvuj objekt nad tim. Takze to treba zaobalit funkci podobne jako mas this.generujKrizek = function() A pokud by to neslo, tak bych pouzil takove siditko krizek.id='xxx' objx.append... objx.krizek = document.getElem...('xxx') a tim padem na to muzes odkazovat jako na this.krizek |
||
tuzticzka Profil |
#3 · Zasláno: 28. 8. 2008, 13:12:03
jenže já se potřebuju dostat k instanci, ne na objekt SPAN, který je v this....
|
||
Chamurappi Profil |
#4 · Zasláno: 28. 8. 2008, 14:08:00
Reaguji na tuzticzku:
Vyrob si lokální proměnnou, do které uložíš referenci na aktuální this: var that = this; krizek.onclick = function() { that.skryj(); }; |
||
tuzticzka Profil |
#5 · Zasláno: 28. 8. 2008, 16:43:15
Chamurappi
Díky moc, přesně toto jsem potřeboval. |
||
Časová prodleva: 16 let
|
0