Autor Zpráva
Kipos
Profil *
Dobry den mam problem z prvky. Mam nekolik prvku a potrebuji je nastavit po kliknuti na aktivni. Jde o to ze v CSS pouzivam funkci .active abych mel treba zvyrazneny text aktivniho prveku. Ale nevim jak udelat prvek aktivni po kliknuti na nej. Jde pouze o odkazy <a>.
Dekuji
kikinet
Profil
Kipos:
Nejsem si jistá jestli úplně rozumím tomu na co se ptáte, ale jestli tomu rozumím tak chcete aby odkaz, na který už někdo kliknul, vypadal stejně jako aktivní odkaz? Toho by šlo docílit nastavením atributů alink a vlink
Kipos
Profil *
To právě ne, jde o to že když na nějaký prvek kliknu a pustím myš nezůstave mu vlastnost active. Když mám dejme tomu menu v levo a 8 odkazů když na nějaký odkaz kliknu aby se obarvil do černa, ale když kliknu na jiný aby se obarvil zese ten jiný a minulý vrátil původní barvu. v CSS vím jak to udělat pomocí a.active, ale jde o to že těm prvkům ta vlastnost že je aktuálně aktivní nezůstává po tom co myš pustím, jen když držím tlačítko.
Keeehi
Profil
Kipos:
Vy při kliknutí na nějaký odkaz zůstáváte na té samé stránce?
kikinet
Profil
Kipos:
Takže jde o to že Vám nefunguje a:active? Pokud pustíte tlačítko myši tak se odkaz neobarví na požadovanou barvu? Nechcete tu dát konkrétní kód toho problému?
Kipos
Profil *
<html>
<head>
<link rel="stylesheet" type="text/css" href="redakce.css" media="screen" />
<style media="all" id="zalozky">
        .polozka {display: none} 
         #prvni {display: block}
</style>

<script>
        var zobrazena = "prvni"; // pomocna promenna, na zacatku nastavena na jmeno zobrazene polozky
        
        function zobraz(polozka){
            if (document.getElementById){    
                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
            }
            else {
                if(document.stylesheets) document.stylesheets["zalozky"].disabled = true; // v nekterych browserech (IE 4) vypne styl nezobrazovani, aby se polozky alespon zobrazily
                return true; // odkazy budou proklikavat na href
            } 
        }

        
    </script>
</head>
<body>

<p class="zalozka">    
<table>
                <tr><td><a id="id1" href="#prvni" onclick="return zobraz('prvni')"> </a></tr></td>
                <tr><td><a href="#druha" onclick="return zobraz('druha'); "></a></tr></td>
                <tr><td><a href="#treti" onclick="return zobraz('treti'); "></a></tr></td>
<table>
</p>

<div class="center">
    <div id="prvni" class="polozka">
    <a name="prvni"></a>
    <p>Nějaký libovolný text bla bla bla bla bla. Lorem ipsum dlouhý text.

    </div>

    <div id="druha" class="polozka">
    <a name="druha"></a>

    <p>Vtip je v tom, že jsem pořád v tomtéž souboru.
    </div>

    <div id="treti" class="polozka">
    <a name="treti"></a>
    <p>Obsahuje libovolný text, který se aktivuje po kliknutí na třetí odkaz.
    </div>
</div>

</body>
</html>

a css je:
.zalozka a
{position:relative;
display:block;
padding-top:10px;
border-top:0px;
padding-left:0px;
padding-bottom:0px;
border:1px solid;
width:70px;
height:50px;
background-image:url("obr2.png");background-position:center;background-repeat:no-repeat;
}

.zalozka a:hover {background-image:url("obr.png");background-position:center;background-repeat:no-repeat;}
.zalozka a:active {background-image:url("obr3.png");background-position:center;background-repeat:no-repeat;}



slo by to resit tak ze bych pridal tem prvkum dalsi tridu active a v tom css bych akorat udelal a.active, ale nepovedlo se mi to dostat do te javy
jenikkozak
Profil
Kipos:
Stačilo napsat, odkud to je.

Úplně stejným způsobem, jako měníš pomocí JS třídy u zobrazených částí textu, přehazuj dvě třídy i u jednotlivých položek menu. Pseudotřída active v tomhle nepomůže.
Kipos
Profil *
ja to mam na disku zatit :-)
Moc nechapu jak to myslis ja potrebuj iaby aktivni zustal jeden z techto prvku
                <tr><td><a  href="#prvni" onclick="return zobraz('prvni')"> </a></tr></td>
                <tr><td><a href="#druha" onclick="return zobraz('druha'); "></a></tr></td>
                <tr><td><a href="#treti" onclick="return zobraz('treti'); "></a></tr></td>

po kliknuti. NEchci aby aktivni byly uz jednotlive id

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

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