Autor Zpráva
Xanomes
Profil
Dobrý den,
můj dotaz se týká tohoto příkladu na JakPsátWebu,
zajímá mne, jak označit barevně v menu položku, na které se nacházím.
Děkuji za odpověď
Bez_názvu.jpg
Profil *
Zdravim,
obecně tenhle problém řeším tak, že elementu přidám HTML třídu (pomocí JS, na serveru) a tu pak nastyluju.

Konkrétně pro tuhle situaci by mělo fungovat tohle:

JS (funkce zobraz)
if (document.getElementById){
    document.getElementById(zobrazena).classList.remove("aktivni"); // odebere třídu z aktuální označené
    document.getElementById(polozka).classList.add("aktivni"); // přidá třídu na novou
    
    document.getElementById(zobrazena).style.display = "none"; // skryje pøedchozí polozku
    document.getElementById(polozka).style.display = "block"; // zobrazi se nakliknuta polozka
    
    zobrazena = polozka; // aktualne zobrazena polozka se ulozi do globalni promenne, aby se pozdeji dala skryt
    
    return false; // odkaz neproklikne na href
}

CSS
.polozka .aktivni {
    background-color: red;
}
Chamurappi
Profil
Reaguji na Beza_názvu.jpg:
Zapomněl jsi napsat, že na podporu classListu se zatím nedá spoléhat. V kombinaci s testem, jestli existuje document.getElementById, to vypadá fakt divně…


Reaguji na Xanomese:
Já bych při kliku na záložku měnil třídu společnému rodiči a nechal bych na stylopisu, ať zobrazí/skryje/přebarví, co se zobrazit/skrýt/přebarvit má…
Xanomes
Profil
Chamurappi:
Na mě musíš víc polopatě, netuším jak mám tu třídu změnit...

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0