Autor | Zpráva | ||
---|---|---|---|
Anonymní Profil * |
#1 · Zasláno: 24. 7. 2006, 20:31:43
Představte si: Mám tři záložky (JS+CSS). Když na nějakou kliknu, tak se pomocí funkce ta jedna obarví a zbytek po jedné se obarví na bílo. Jde nějak udělat, abych nemusel vypisovat v případě více záložek u každé, aby se obarvila na bílo? Myslím to tak, že by se tam udělalo, že se obarví pouze ta záložka, která je např. červená?
|
||
Mistr Profil |
#2 · Zasláno: 24. 7. 2006, 20:36:41
Anonymní
Máš na mysli něco takového, co je užito v hlavičce webu Jak psát web? |
||
Anonymní Profil * |
#3 · Zasláno: 25. 7. 2006, 09:00:44
Jo, ty záložky nějak takhle. Ale když mám tři záložky, tak script je už dost dlouhý:
<style> #polozka1{background-color:red} </style> <script> function sel(zalozka){ if(zalozka=='prvni'){ document.getElementById('polozka1').style.backgroundColor = 'red'; document.getElementById('polozka2').style.backgroundColor = 'white'; document.getElementById('polozka3').style.backgroundColor = 'white'; } else if(zalozka=='druha'){ document.getElementById('polozka1').style.backgroundColor = 'white'; document.getElementById('polozka2').style.backgroundColor = 'red'; document.getElementById('polozka3').style.backgroundColor = 'white'; } else if(zalozka=='treti'){ document.getElementById('polozka1').style.backgroundColor = 'white'; document.getElementById('polozka2').style.backgroundColor = 'white'; document.getElementById('polozka3').style.backgroundColor = 'red'; } } </script> <div id="zalozky">Prohledat: <span id="polozka1"><a href="#" onclick="sel('prvni');">První polo3/4ka</a></span> <span id="polozka2"><a href="#" onclick="sel('druha');">Druhá polo3/4ka</a></span> <span id="polozka3"><a href="#" onclick="sel('treti');">T?etí odkaz</a></span> </div> A kdybych chtěl záložek ještě víc, tak ten kód bude hoodně velkej. Proto bych chtěl nějak udělat, aby tam třeba bylo něco, co by obarvilo jen ty červený políčka. |
||
tiso Profil |
#4 · Zasláno: 25. 7. 2006, 09:46:36
1. Keď už, tak jednoduchšie by bolo nastaviť farbu na bielu a meniť farbu iba aktívnej položky na červenú
2. Na toto nepotrebuješ javascript, ide to čiste v css: #zalozky a{background: White none;} #zalozky a:hover{background: Red none;} |
||
Anonymní Profil * |
#5 · Zasláno: 25. 7. 2006, 11:08:16
tiso
no jo, ale tohle mi udělá to, že se to bude obarvovat když na to najedu myší. já potřebuju, aby se to obarvilo, když na to kliknu. |
||
peta Profil * |
#6 · Zasláno: 26. 7. 2006, 17:00:46
Anonymní
<style> .z1{background-color:#f00;} .z2{background-color:#fff;} </style> <script> function sel(xObject) { var x,i x = document.getElementById("zalozky").childNodes; for (i=0;i<x.length;i++) { if (x[i].nodeType==1 && Boolean(x[i].nodeName=="SPAN") { x[i].className="z1"; } } xObject.className="z2"; } </script> <div id="zalozky">Prohledat: <span onclick="sel(this);">První polozka</span> <span onclick="sel(this);">První polozka</span> <span onclick="sel(this);">První polozka</span> </div> Netestovano! Podobnym zpusobem by sel i ten onclick pridat. Ale podle mne by bylo lepsi pouzit INPUT type=radio |
||
peta Profil * |
#7 · Zasláno: 26. 7. 2006, 17:02:45
oprava, zavorka na konci
if (x[i].nodeType==1 && Boolean(x[i].nodeName=="SPAN")) |
||
Anonymní Profil * |
#8 · Zasláno: 26. 7. 2006, 21:10:56
peta
Díky moc!!! |
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0