25. november 2005 - 14:53Der er
10 kommentarer og 1 løsning
javascript kald fra php , Mozilla
Hej
Jeg har problemer med nedenstående, det er en del af en menu. Jeg har en menu med hovedpungter, der er der et + eller - som er aktiv afhængig af om underpungterne vises. Det virker fint i IE men ikke i Mozilla. Nedenstående er den del som udskriver + eller - mener det er der problemet er.
Er der en som kan hjælpe med det. Følgende er kald til javascript, mener det er det som ikke virker. onclick=\"lag('".$text."lag',document.images['".$text."pic'])
ah ja, det er den "gode" gamle document.all der er på spil igen ;-)
Mozilla understøtter nemlig ikke document.all (og kommer aldrig til det), så du bør altid bruge den standardiserede document.getElementById istedet: function lag(lagnavn, bil) { var elm = document.getElementById(lagnavn).style; if (elm.display == 'none') { elm.display = 'block'; bil.src = './img/menu/minus.png'; } else { elm.display = 'none'; bil.src = './img/menu/plus.png'; } SetCookie(lagnavn, elm.display); }
Vil du også lige rette den er for mig, bruges også i menuen.
function cookiework(name){ var lag = name + 'lag'; var pic = name + 'pic'; var cookie = GetCookie(lag); if (cookie == 'none') { document.all[lag].style.display = 'none'; document.images[pic].src = './img/menu/plus.png'; } else if (cookie == 'block') { document.all[lag].style.display = 'block'; document.images[pic].src = './img/menu/minus.png'; } }
det er (stort set) det samme som før faktisk: function cookiework(name){ var lag = name + 'lag'; var pic = name + 'pic'; var cookie = GetCookie(lag); if (cookie == 'none') { document.getElementById(lag).style.display = 'none'; document.images[pic].src = './img/menu/plus.png'; } else if (cookie == 'block') { document.getElementById(lag).style.display = 'block'; document.images[pic].src = './img/menu/minus.png'; } }
Bare husk: document.all - fyfy. document.getElementById - jatak (ellers yes sir! hvis du er med på den vogn ;-)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.