Autor Zpráva
Martin02
Profil
Ahoj,
napsal jsem script, který nastaví nějakému prvku visibility: hidden;. Poté vytvoří odkaz, který má po kliknutí nastavit prvku visibility: visible; a tím se zobrazit. Ovšem po kliknutí na odkaz to nic neudělá.. Proč?
<a href="#" onclick="var nwm = 1;">nwm</a>
<p style="visibility: hidden;" id="nwm">slovo</p>

<script type="text/javascript">
  if(nwm == 1) {
    document.getElementById('nwm').style.visibility = 'visible';
  } 
</script>

děkuji
Taps
Profil
Martin02:
zkus
<script type="text/javascript">
function klikni(polozka){
  if( polozka == 1) {
    document.getElementById('nwm').style.visibility = 'visible';
  } 
  }
</script>
<a href="#" onclick="klikni(1)">nwm</a>
<p style="visibility: hidden;" id="nwm">slovo</p>

Martin02
Profil
Taps:
bohužel, nic.. :(

Kdyžtak to může být napsáno i jinak. Jde mi o to, udělat odkaz, který po kliknutí zobrazí nějaký prvek a když kliknu podruhé, zobrazí slaší prvek atd.
pcmanik
Profil
Pouzi kod z tohoto vlakna link
Martin02
Profil
Ale tam je nějaký display: none atd. To já nevím co je...
Prosím o script, který vytvoří odkaz, který po kliknutí zobrazí prvek, po dalším kliknutí zobrazí další prvek atd. Nemusí tam být odkaz, který prvek zase smaže.
děkuji a omlouvám se, ale opravdu tomu moc nerozumím
joe
Profil
Asi nějak takto.

<script type="text/javascript">
function setVisibility(element, value) {
   document.getElementById(element).style.visibility = value;
}
</script>
<span onclick="setVisibility('nwm', 'hidden')">skrýt</span>
<span onclick="setVisibility('nwm', 'visible')">zobrazit</span>

<p style="visibility: hidden;" id="nwm">slovo</p>
Martin02
Profil
Po kliknutí na zobrazit se zobrazí slovo, ale já potřebuju, aby když kliknu podruhý na zobrazit, tak se zobrazí druhý prvek, kliknu potřetí, třetí prvek...
joe
Profil
Tak si trochu poraď, stačí jednoduchá úprava

var counter = 1;

<script type="text/javascript">
function setVisibility(element, value) {
   document.getElementById(element).style.visibility = value;
}
</script>
<span onclick="setVisibility('nwm' + counter++, 'visible')">zobrazit</span>

<p style="visibility: hidden;" id="nwm1">slovo</p>
<p style="visibility: hidden;" id="nwm2">slovo</p>
<p style="visibility: hidden;" id="nwm3">slovo</p>
<p style="visibility: hidden;" id="nwm4">slovo</p>
peta
Profil
Martin02:
"Ovšem po kliknutí na odkaz to nic neudělá"
1. Odkaz se pouziva pro odkazovani na stranku. Pokud to nema byt odkaz, nepouzivej prvek A.
2. Pokud je to prvek A, je treba zakazat udalost otevreni stranku
"napsal jsem script, který nastaví nějakému prvku visibility: hidden;"
1. Ano, ale pokud to chces pouzit, tak to musi byt napsano jako funkce, viz Taps
2. Pokud chces klikanim na stejny odkaz menit prvky postupne, pak musis mit cyklus, ktery je vsechny zhasne a otevre prave nasledujici. Seznam ulozis do pole. A co se ma stat, kdyz dojde na konec? Ma to skocit na zacatek, nebo zustat u posledniho prvku?

klicova slova: cyklus, podminka, pole, funkce
stranka s priklady: http://www.jakpsatweb.cz/javascript/priklady/index.html

Pokud chces takovy script vytvorit ne svou osobou, je to forum prace a zakazky.
Mozna neco slozitejsiho podobneho, ta galerie a sipka vpravo vlevo.
http://www2.fpf.slu.cz/cz

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:

0