Autor Zpráva
sagitka
Profil *
Zdravím,
potřebovala bych poradit s takovou prkotinkou:
Mám levé menu a v něm odkazy, používám externí stylopis. Odkazy odkazují do iframu vedle menu. Jednoduché stránky.
Po přejetí myši na jednotlivé odkazy se mi správně to písmo zvětšuje a mění barvu dle toho jak jsem to nastavila ( a:hover { font-size: 130%; color atd... } ), ale zasekla jsem se na tom, že nevím, jak mam udělat rozkliknutý odkaz stylovaný jinak než ostatní. Jakože když rozkliknu třeba ODKAZ_1 a v iframu se mi zobrazí požadovaný text, tak aby zůstal ten ODKAZ_1 stále větším písmem a jinou barvou. A zároveň aby mi stále fungovalo to a:hover...
Snad je ten můj problém srozumitelně popsán...
Děkuji za případnou radu :-)
sagitka
Medvídek
Profil
sagitka:
Jedině přidáním nějaké třídy tomu odkazu (buď v php, nebo třeba javascriptem).
Většinou se aktuálně rokliknutému odkazu dává nějaká třída, třeba active.

<a class="active" href="">Já jsem aktivní odkaz</a>


Poté v css zápis

a.active {font-size:130%; color:red;}
a.active:hover {font-size:100%; color:blue;}
sagitka
Profil *
Ale pokud mám stabilní to menu a jen se odkazuji na ten iframe, tak to mam udělat jak? Tvořit kvůli každému odkazu celou tu stránku a né jen to, co se mi ukazuje v iframu?
Medvídek
Profil
sagitka:
Tak to bude asi nejlepší udělat v javascriptě. Po kliknutí na odkaz mu přidáš třídu a všem ostatním odkazům tu třídu vemeš.

Tady sem ti to narychle sepsal (s použitím jQuery)


HTML:
<a class="menu" hover="#">odkaz 1</a>
<a class="menu" hover="#">odkaz 2</a>
<a class="menu" hover="#">odkaz 3</a>
<a class="menu" hover="#">odkaz 4</a>
<a class="menu" hover="#">odkaz 5</a>


CSS:
a.menu {float:left;clear:both;font-size:100%;color:red;cursor:pointer;}
a.menu:hover, a.active {font-size:150%;color:green;}
a.active:hover {font-size:100%;color:red}


JS: (s použitím jQuery, musíš mít přilinkován framework jQuery) nebo ti to třeba někdo přepíše jen do čistého js :)
$(document).ready(function() {
 $('a.menu').click(function () {
      $('a.menu').removeClass("active");
      $(this).addClass("active");
    });
});
sagitka
Profil *
Medvídek:
super, teď už si s tím poradím, fakt moc dík :-)

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0