Autor Zpráva
SwimX
Profil *
Dobrý den,
chtěl sem na stránky dát i staré články, ale jenom tak aby se zobrazoval jenom nadpis a u toho odkaz "zobrazit článek"
Nenašel sem však dostatečně vhodný způsob jak to udělat. Mám to přes javascript, ale každý odkaz "zobraz" a "skryj" a každý článek musí mít jedinečné ID pomocí kterého ho schovám nebo zobrazím když je na něj kliknuto. http://plavec.borec.cz/pl/
Neexistuje nějaký efektnější způsob?
Nox
Profil
nemusíš používat idčka, možná by šla strukura udělat hezčeji než to co napíšu, ale pro popostrčení

<div>
<span onclick="p=this.parentNode.getElementsByTagName('p');p[0].style.displa y='block'">Klik sem</span>

<p>tady ukrytý text</p>
</div>

Samozřejmě by to bylo ve funkci; Možná existuje možnost výběru x-tého dítěte, ale teď si nevzpomínám na název
(leda přes "nth-child" CSS parametr pomocí cssQuery)
SwimX
Profil *
sakra, půlce slov nerozumim, ale kouknu na to. Díky :)
peta
Profil
SwimX
Clanky, pokud jsou v databazi, maji sve id. Coz je jedinecne a neni treba nic vymyslet.
To id asi uz u toho clanku pouzivas pro editaci.

Ale tez muzes pouzit zpusob Nox, JS DOm, jak pise, do funkce.

funkce1(id) {document.getElementById('cl'+id).style.display='block';}
funkce2(obj) {obj.parentNode.getElementsByTagName('P')[0].style.display='block';}
onclick = funkce2(this) // P
onclick = funkce2('123456') // P id='123456'
Zas takova uspora to neni, ale je to samozrejme zajimavejsi.

A jeste by to slo udelat pres nadrazeny tag tech divu, kdyz das jen jedno onclick a sledujes jeho target a od tohoto mista se dostanes do P tagu
DIV id=clanky onclick="funkce3"
Ale tak tim se dostavas do nejasnych vod, kde to nekde jede, jinde ne. Predchozi varianty jsou spolehlivejsi. S tim id asi nejvic.

K vysvetleni...
this = odkaz na aktualni prvek, v tomto pripade SPAN
parentnode = odkaz na rodice prvku SPAN, coz je DIV
getElementsByTagName = najdi vsechny tagy
[0] = vyber nulty tag z pole vsech nalezenych tagu
SwimX
Profil *
peta
články v databázi nejsou, sou jenom v jiném adresáři uložené každý v jiném txt souboru a do indexu je includuju pomocí php.
Kód vypadá asi takto:

<p class="datum"><span>01. 07.</span><a name="#Nasi-plavci-na-mcr"></a>
<h1>Naši plavci na mistrovství ČR</h1>

<span id="kprvnimu"><a href="#Nasi-plavci-na-mcr" onclick="getElementById('prvni').style.display='inline'; getElementById('kprvnimu').style.display='none'; getElementById('bezprvniho').style.display='inline';" title="Zobrazí tento článek">Celý článek...</a></span><span class="neviditelna">* (Při vypntých stylech nefunguje!)</span>


<p class="clanek" id="prvni">
</p>


<p><span id="bezprvniho" class="neviditelna"><a href="#Nasi-plavci-na-mcr" onclick="getElementById('prvni').style.display='none'; getElementById('bezprvniho').style.display='none'; getElementById('kprvnimu').style.display='inline';" title="Schová tento článek">Skrýt článek...</a></span><span class="neviditelna">* (Při vypntých stylech nefunguje!)</span></p>


Zkusím to noxovo. Snad z toho něco vyleze :)

Vaše odpověď

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

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