Autor Zpráva
Anonymní
Profil *
čau, mám jednoduchý požadavek a nějak se mi to nedaří... klubím php a css.. jak mam udelat to, ze mam ptreba 10 polozek a kdyz kliknu vzdycky na jednu z nich, tak prave ta, na kterou kliknu bude mit class=current... můžu nahrazovat např. proměnou jako jsem se o to snažil zde?

<li><a href="#" class="promena" onclick="<?php $promena=current ?>"><span> abcd </span></a></li>


normálně to vypadá takto

<li><a href="#" class="current"><span> abcd </span></a></li> - tento odkaz má speciální styl - má class current

<li><a href="#"><span> abcd </span></a></li> - tento odkaz nemá speciální styl current class by se mu měla přiřadit po kliknutí.



Potřebuji prostě udělat to, aby když kliknu jeden třeba z osmi odkazů, tak aby se změnila class toho aktuálně zakliknutyho odkazu. Jesli budete vědět, pls pomožte. Jinak možný je že to pro tohle prostě neni PHP adekvátní, alternativa snad jen javascript.. je mi jasný, že to nedělám dobře, tak mi to prosím někdo trošičku objasněte. díky moc, kůzle!
Joker
Profil
Takhle to nejde, jsou to různé technologie pomíchané dohromady:
<a href="#" - (X)HTML
class="neco" - CSS (kaskádové styly)
onclick= - DOM (objektový model dokumentu)
<?php ... ?> - PHP, skript na straně serveru

1) PHP je skript na straně serveru a tudíž veškeré PHP se provede ještě před načtením stránky. K provedení PHP je potřeba načíst novou stránku. Z toho vyplývá, že PHP kód nejde navázat na klientské události jako třeba onclick.
2) HTML a kaskádové styly mají jen hodně omezené možnosti dynamického chování, takže třídu v kaskádových stylech nelze definovat jako proměnnou

Celé by to šlo udělat Javascriptem (+ DOM)
edit: Anebo přes samotné PHP, ale trochu jinak

Pro přesnější řešení bych potřeboval vědět, co přesně to má dělat.
Toto téma je uzamčeno. Odpověď nelze zaslat.