Autor Zpráva
tuzticzka
Profil
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
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
jenže já se potřebuju dostat k instanci, ne na objekt SPAN, který je v this....
Chamurappi
Profil
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
Chamurappi
Díky moc, přesně toto jsem potřeboval.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: