Autor | Zpráva | ||
---|---|---|---|
McM Profil * |
#1 · Zasláno: 31. 8. 2011, 15:58:29
Dobrý den mám problém.
jako menu při své práci na webu jsem použil trochu asi netradiční způsob a to způsob roklikávací. Tzn. že vždy nejdříve rokliknu nějaký prvek dejem tomu základní škola a z toho mi vyjedou terpve třídy a ty odkazují na stránku. Více méně to vypadá asi takto: před rozkliknutím ZÁKLADNÍ ŠKOLA STŘEDNÍ ŠKOLA VYSOKÁ ŠKOLA po rozkliknutí ZÁKLADNÍ ŠKOLA STŘEDNÍ ŠKOLA 1.a 2.a 3.a 4.a ... 9.a VYSOKÁ ŠKOLA Pokud rozkliknu vysokou školu tak bych chtěl aby se mi střední škola zavřela. zkoušel jsem onclick ale to mi vždy zůstane otevřené takže pokud rozkliknu těchto prvků více vyjedu jakoby ze čtverce který tomu mám vymezený. Potřeboval bych tedy aby když rozkliknu střední školu a poté vysokou aby zároven s rozkliknutím vysoké se zavřela střední a nemusel jí zpětně zavírat dalším kliknutím... Tak snad jsem problém popsal jasně. |
||
johnl Profil |
#2 · Zasláno: 31. 8. 2011, 16:15:52
Pomohlo by, kdyby jsi sem poslal kód celého menu.. Každopádně můžeš si vytvořit např. funkci která bude fungovat nějak tak, že po spuštění bude předaný parametr které menu se má rozkliknout a tomu se nastaví display: block; a ostatním hidden či nějak podobně..
|
||
McM Profil * |
#3 · Zasláno: 31. 8. 2011, 16:22:11
tak takhle to vypadá
<script> function zobrazSkryj(idecko){ el=document.getElementById(idecko).style; el.display=(el.display == 'block')?'none':'block'; } </script> <style> h3 {cursor: pointer; cursor: hand; text-decoration: underline} .skryvany {display: none} </style> <h3 onclick="zobrazSkryj('oddil2');return false"><a href="#"><img src="2. ročník.png" width="180" height="45"></h3><div id="oddil2" class="skryvany"> 1.řádek 2.řádek 3.řádek 4.řádek </div> <h3 onclick="zobrazSkryj('oddil3');return false"><a href="#"><img src="3. ročník.png" width="180" height="45"></h3><div id="oddil3" class="skryvany"> 1.řádek 2.řádek 3.řádek 4.řádek 5.řádek </div> |
||
Časová prodleva: 3 dny
|
|||
sysel Profil |
#4 · Zasláno: 3. 9. 2011, 23:18:33
To je hezky napsáno pro případ s jedním rozklikávacím polem. Ale pro více svázaných polí je nutno funkci navrhnout tak, aby:
- si nejprve zapamatovala, co má nakonec být rozkliknuto (jestli je kliknuto na element, který je rozkliknutý, tak na konci nemá být asi rozkliknuto nic - že?) - všechna pole --sklika-- - rozklikla to, které si pamatuje, že má být rokliknuto Je samozřejmě možné pamatovat si naposledy rozkliknuté pole, nebo projít všechna pole s testem na rokliknutost a jen to rozkliknuté --skliknout-- ale skript je dostatečně rychlý a prvně uvedený návrh bude dostačující, navíc spolehlivý. Pokud mohu doporučit, lze se šikovně vyhnout přemíře id-ček použitím this.neco this.parentNode.neco nebo naopak se vnořit do potřebné úrovně this.childNodes[] elementu nebo použít k procházení stromu elementů this.nextSiblink. Ale bez toho to bude také fungovat. Hezký den |
||
Časová prodleva: 13 let
|
0