Autor | Zpráva | ||
---|---|---|---|
tomas3333 Profil |
#1 · Zasláno: 31. 7. 2008, 01:38:07 · Upravil/a: tomas3333
Zdravim, mohol by som vediet, preco tento script nefunguje v IE a FF? V opere vsetko ok
echo "<script type='text/javascript'> function show(id) { document.getElementById('id_'+id).style.display='block'; document.getElementById('link_'+id).onclick='hide('+id+')'; }; function hide(id) { document.getElementById('id_'+id).style.display='none'; document.getElementById('link_'+id).onclick='show('+id+')'; }; </script>"; ... ."<a href='javascript:void(0)' id='link_".$array['id']."' onclick=\"show(".$array['id'].")\">".$array['title']."</a><br />" ."<div id='id_".$array['id']."' style='...'>".stripslashes($array['novinka'])."</div>"; aby som bol presny, novinka sa zobrazi, ale uz sa neskryje |
||
tomas3333 Profil |
#2 · Zasláno: 31. 7. 2008, 02:57:13
tak som trochu patral a nasiel riesenie, zmenil som funkcie takto:
echo "<script type='text/javascript'> function show(id) { document.getElementById('id_'+id).style.display='block'; document.getElementById('link_'+id).onclick=function(){hide(id);}; }; function hide(id) { document.getElementById('id_'+id).style.display='none'; document.getElementById('link_'+id).onclick=function(){show(id);}; }; </script>"; ak by mi ale niekto dokazal vysvetlit, preco to takto funguje, bol by som rad |
||
peta Profil |
#3 · Zasláno: 2. 8. 2008, 10:48:53
tomas3333
mas rad slozitosti, budiz. ja bych porovnal aktualni nastaveni a zmenil pouze display. showhide(id) obj = document.getElementById('id_'+id) obj.style.display = b ? obj.style.display=='none' ? 'block' :'hide' |
||
tomas3333 Profil |
#4 · Zasláno: 3. 8. 2008, 12:51:34
pravdou je, ze ma to tvoje riesenie nenapadlo, ale vyzera to dobre... to vsak nie je odpoved na otazku, preco to funguje takto:
...onclick=function(){show(id);}; |
||
centi Profil |
#5 · Zasláno: 3. 8. 2008, 14:41:49
tomas3333
Viac by ťa malo zaujímať, prečo ti nefungovalo prvé riešenie: onclick = 'xxx'. Nefunguje preto, lebo onclick nie je v javascripte atribút elementu (ako napr. elm.id, ...), ale udalosť, ktorá ako svoju hodnotu očakáva referenciu na nejakú obslužnú funkciu a nie string. Je to podobný problém ako s atribútmi for, class a style v IE. |
||
Časová prodleva: 16 let
|
0