Autor Zpráva
Honzin
Profil *
Chtěl bych udělat vodorovné menu, např. se třemi odkazy, a to tak, aby se obsah těchto odkazů načítal najednou při načtení stránky a kliknutím na odkaz by se obsah jen "zviditelnil". Mohlo by to jít pomocí visibility nebo pomocí pozicování. Má někdo něco podobného už vychytaný. Poraďte prosím...
Miloš
Profil
Máš na mysli tohle?
Honzin
Profil *
Bohužel ne. Představ si třeba tři tabulky. Při načtení stránky se zobrazí 1. tabulka a ve vodrovném menu jsou odkazy na 2. a 3. tabulku. Když kliknu na odkaz s 2. nebo 3. tabulkou, zmizí 1. tabulka a bez znovu-načítání se zobrazí tabulka 2. či 3.
habendorf
Profil
Honzin: Něco takového http://www.alistapart.com/d/hybrid/hybrid-4.html ?
Honzin
Profil *
Taky ne. Obsah pod těmi "záložkami" nejsou další odkazy, ale např. nějaký text. A nemá se měnit po najetí myší, ale až po kliknutí.
habendorf
Profil
Obsah pod těmi "záložkami" nejsou další odkazy, ale např. nějaký text. A nemá se měnit po najetí myší, ale až po kliknutí.

No dobře, to už je ale detail. Základ máš, stačí drobné úpravy,
Honzin
Profil *
Nojo, máš recht.
Díky, díky.
Honzin
Profil *
Jsem myslel, že vím jak, ale nevím. Takže "základ mám", ale v čem spočívají ty "drobné úpravy"?
Honzin
Profil *
Tak jsem to udělal javascriptem.
nakashi
Profil
když to chceš až po kliknutí, tak to stejně pomocí a:hover neuděláš, takže musíš javascriptem...
já to řešil takhle:
	<script type="text/javascript">

<!--
function showhide(pp) {
var objekt = document.getElementById(pp);
objekt.className = objekt.className=='noshow' ? '' : 'noshow';
return false;
}
// -->
</script>
...
<div id="box"></div>
<a href="" onclick="return showhide('box');">ukaž!</a>
<script language="javascript"><!-- showhide('box'); --></script>
...
#box {display:block;}
#box.noshow {display:none;}

ale takhle je to pouze pro jeden blok, kterej se ukazuje a schovává.
Když jich chceš víc, tak ten JS musíš upravit, aby to skrylo ten poslední a ukázalo aktuální, ale to už neni složitý.
Honzin
Profil *
pro více obsahů jsem to udělal takhle:


<style type="text/css">
.none {display: none;}
.visible {display: block;}
</style>

<SCRIPT LANGUAGE="JavaScript">
function setOne(one) {
document.getElementById("prvni").className=one;
}
function setTwo(two) {
document.getElementById("druha").className=two;
}
function setThree(three) {
document.getElementById("treti").className=three;
}
</SCRIPT>


při načtení stránky se otevře obsah 1 a odkazy zviditelňují a schovávají další obsahy:

<body onload="setOne('visible'); setTwo('none'); setThree('none');">
<a href="#" onclick="setOne('visible'); setTwo('none'); setThree('none');">|první odkaz| </a>
<a href="#" onclick="setOne('none'); setTwo('visible'); setThree('none');"> |druhý odkaz |</a>
<a href="#" onclick="setOne('none'); setTwo('none'); setThree('visible');"> |třetí odkaz|</a>
<div id="prvni">
obsah 1
</div>
<div id="druha">
obsah 2
</div>
<div id="treti">
obsah 3
</div>
...


hodí se to, když máme dlouhý obsah a nechceme rolovat kolečkem
Stenlyb
Profil *
Super skript, moc mi pomol... díky
Toto téma je uzamčeno. Odpověď nelze zaslat.