Autor Zpráva
Argonisius
Profil *
Dobrý den,
mám záložkové menu nastylované v css tak, aby při najetí myši změnilo barvu písma i pozadí. Tímto menu odkazuji do iframe, takže k mi a:active nefunguje. Chtěl bych se zeptat, jestli někdo neví, jak udělat, aby při kliknutí na položku v menu byly tyto barvy změněné až do té doby, než kliknu na položku jinou. (aby uživatel viděl, na které stránce je)
regy
Profil
Podobný problém jsem řešil také, měl jsem zase problém, že mi a:active nefungovalo proto, že odkaz vykonával pouze js a potřeboval jsem také, aby byl změněn až do té doby, než jklikneš na něco jiného. Vyřešil jsem to pomocí JS nějak takto:
<div id='prvni' class='odkaz' ><a href='neco.html' onclick='acitve('prvni');'>první</a></div>
<div id='prvnia' class='odkazactive' style='display:none;'>první</div>

<div id='druhy' class='odkaz' ><a href='neco.html' onclick='acitve('druhy');'>Druhý</a></div>
<div id='druhya' class='odkazactive' style='display:none;'>Druhý</div>


Pak stačí napsat nějakou js funkci, která pří kliknutí na první vyplně to předchozí. Třeba něco takového:
function acitve(x) {
if(x == "prvni") {
    prvnia.style.display = "";
    prvni.style.display = "none";
    druhya.style.display = "none";
    druhy.style.display = "";
}    
if(x == "druhy") {
    prvnia.style.display = "none";
    prvni.style.display = "";
    druhya.style.display = "";
    druhy.style.display = "none";
}    
}


Ve stylech si pak do .odkazactive napíšeš to, jak má vypadat aktvní odkaz. Pokud máš vetší menu, vymysli si nějakou šikovnější funkci, já jsem na js celkem lama a podle toho to vypadá ;-). Jak to funguje se můžeš podívat na http://www.kablik.cz/beta . týká se to nastavení (klikni na Nastavení v levém dolním rohu hlavičky, objeví se ti panel pro nastavení a tam vlevo je menu, o kterém se bavíme).

Snad ti to nějak pomůže.
Měsíček
Profil
Reaguji na regyho:

Bacha na to, takovéto prostory má pouze IE (který si to bere i z atributu "name") takže například:
<div id="x"> </div>

x.style.backgroundColor = "gold"; // Pro IE
document.getElementById("x").style.backgroundColor = "gold"; // Pro všechny
regy
Profil
To je divné, mě to funguje :-). Říkal jsem, že js moc neovládám. Ale nechápu proč to tedy funguje (viz okdaz v minulém řpíspěvku).
Argonisius
Profil *
Tak nevim no...... moje menu vypada takhle:

html:

<div id="menu">
<ul>
<li><a href="uvodni_strana.html" target="iframe">Úvod</a></li>
<li><a href="louka.html" target="iframe">Louka</a></li>
<li><a href="les.html" target="iframe">Les</a></li>
<li><a href="rybnik.html" target="iframe">Rybník</a></li>
<li><a href="savana.html" target="iframe">Savana</a></li>
<li><a href="pouste.html" target="iframe">Pouště</a></li>
<li><a href="tropicky_destny_les.html" target="iframe">Tropický deštný les</a></li>
<li><a href="koralove_utesy.html" target="iframe">Korálové útesy</a></li>
</ul>
</div>
<iframe src="uvodni_strana.html" class="iframe" name="iframe" frameborder="0"></iframe>
css:

#menu {width:722px; height: 29px; float:left; font-size: 16px; font-weight: bold; font-family: Arial, Helvetica, sans-serif; margin-left: 26px;}
#menu ul {margin: 0px; padding: 0px;}
#menu li {float:left; position:relative; list-style-type:none;}
#menu li:hover {background-color: #6b8e23;}
#menu a {display:block; text-decoration:none; color: #6b8e23; width: 100%; height: 100%; padding: 7px 11px 4px 11px;}
#menu a:hover {color: #ffffff; }


Ja taky js moc neovladam, takze si neumim predstavit tohle do nej pretvorit a tak bych vás chtěl požádat, (pokud se někdy budete nudit) jestli by jste to někdo nezkusil udělat. Není to nutné, ale v detailech je síla, takže bych to tam rád měl...

Předem díky. Argonisius
Argonisius
Profil *
Tak....nakonec jsem to nějak sesmolil.... funguje mi to všude kromě mozily =(. Třeba je to tím co říkáš, Měsíčku, mohl bys to nějak polopatě vysvětlit, za co mám do regyho scripti dosadit to "document.getElementById("x")" ?


Díky.
Argonisius
Profil *
(ne co mám, ale kam mám)
Argonisius
Profil *
Tak jeste upresnim, ve firefoxu mi vsechny odkazy funguji, jen se mi nezmení natrvalo barva písma a pozadí, tzn. že nefunguje "přepínání" mezi display: none a display:"". Nevíte někdo co s tím?

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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