Autor | Zpráva | ||
---|---|---|---|
Kyoshi Profil * |
#1 · Zasláno: 16. 4. 2010, 16:30:45
Nevěděl jsem jak to pojmenovat tak, aby to vyjadřoval podstatu problému, tak sorry.
kus zdrojáku a link na web: Odkaz <a onclick="xcollapse('X9560'); return false;" href="#">...</a> <table id="X9560" class="collapse"> .. </table> Mám tam těch colapse několik, jak je vidět z náhledu zdrojáku webu. Jde mi jen o to, že když kliknu na jedno a pak hned na druhé, tak se zobrazí další okno a to předešlé se posune pod něj. Je to normální funkce, ale mě jde o to, jak udělat, aby se po kliknutí na další zavřelo to předešlé okno. Snad je to k pochopení. Něco jako, když nastavím return false tak, aby se při kliknutí na nabídku 2 zavřel otevřený obsah nabídky 1 a místo ní se ukázal obsah nabídky 2. Určitě to jde udělat nějak čistě, ale zatím jsem nenašel jak. Předem díky za jakoukoli odpověď. |
||
Časová prodleva: 4 dny
|
|||
Chamurappi Profil |
#2 · Zasláno: 20. 4. 2010, 12:58:57 · Upravil/a: Chamurappi
Reaguji na Kyoshiho:
Udělej si globální proměnnou ( var currentccommid mimo funkci), do které uložíš právě zobrazený element (currentccommid = ccommid za ccommid.style.display = 'block' ) a ten skryj při otevírání dalšího (currentccommid.style.display = 'none' před ccommid.style.display = 'block' ).
|
||
Časová prodleva: 10 dní
|
|||
Kyoshi Profil * |
#3 · Zasláno: 30. 4. 2010, 10:59:49
Ahoj,
tak já se předem omlouvám, ale v tom zřejmě dost plavu. JavaScript jde mimo mě a tak těm globálním a lokálním proměnným moc nerozumím. Snažil jsem se to pochopit a zbytečně tak tady neotravovat dotazy, a proto jsem posledních 10 dní četl snad vše, co se onoho problému týkalo, ale nic :( Mohl by jsi sem prosím hodit nějaký názorný příklad? Pokud možno, tak s použitím toho, co mám na webu (ano.. prosím o kompletní vyřešení problému :'( ). Mé amatérské pokusy selhali a už dál prostě nemůžu :) Jo a... stejně, díky za radu! V podstatě to chápu, ale chybí mi základy k tomu, abych to převedl do praxe. |
||
Chamurappi Profil |
#4 · Zasláno: 30. 4. 2010, 14:15:48
Reaguji na Kyoshiho:
„ale v tom zřejmě dost plavu“ Jako ryba ve vodě :-) Před těmi deseti dny jsem mluvil o skriptu xcelements.js. Úprava, kterou jsem popsal, by vedla cca k tomuhle: var currentccommid; function xcollapse(id) { var ccommid = document.getElementById(id); if(ccommid !== null) { if(ccommid.style.display == 'block') { ccommid.style.display = 'none'; } else { if(currentccommid) currentccommid.style.display = 'none'; ccommid.style.display = 'block'; currentccommid = ccommid; } } } |
||
Kyoshi Profil * |
#5 · Zasláno: 30. 4. 2010, 14:30:12
Chamurappi:
Pááni .. ono to fakt funguje. Musím se přiznat, že jsem to prve házel přímo do zdrojáku v <script type="text/javascript" language="JavaScript"><!-- ... A taky koukám na to, co vzešlo z první tvé rady.. to co jsem vytvořil já se tomuhle absolutně nepodobalo :-D O tom xcelements.js jsem dokonce nevěděl, že ho tam máma, a i kdyby.. nevěděl bych na co je :) Díky díky moc.. už to fachá.. překopírovat a přepsat jsem to už dokázal sám ;) |
||
Kyoshi Profil * |
#6 · Zasláno: 30. 4. 2010, 14:34:52
P.S.: díky ještě jednou a jdu to oslavit k ohni ;) kamarádi oslavují zvýšení platů, holky nebo povýšení a já... objevení xcelements.js :-D :-D Přeju bouřlivé čarodějnice ;)
|
||
Časová prodleva: 14 let
|
0