Avatar billede hav0k Nybegynder
26. januar 2007 - 00:44 Der er 4 kommentarer og
1 løsning

Vis/skjul funktion underlig i Firefox!

Jeg bruger følgende script til at vise/skjule teksten på nogle arbejdsgrupper når man klikker på overskriften.. Hjemmesidereferencen ses her: http://overskole.dk/ny/?page=hold

Scriptet til vis/skjul funktionen er:

<!-- Vis/skjul funktion -->
<script type="text/javascript">
    function visk(e,h){
        e = document.getElementById(e);
        p = h.childNodes[0];
        f = (e.style.display=="none")?1:0;
        p.src = (f)?"img/minus.gif":"img/plus.gif"
        e.style.display = (f)?"inline":"none";
    }
</script>

Og der hvor den bruges:

<table>
<tr><td>Nr: 1 - <b>Bla bla</b>  <a href="#" onclick="visk('q6',this);"><img src="img/plus.gif" border="0" />Læs mere</a></td></tr><tr><td id="q6" style="display: none;">Arbejdsgruppe hvor vi, for at bryde alle traditioner, arbejder...<br><br><i>Lærer - O. Nybo</i><br><br>Max. elever der kan deltage i arbejdsgruppen: 99<br></td></tr><tr><td>Nr: 2 - <b>Fodbold</b>  <a href="#" onclick="visk('q4',this);"><img src="img/plus.gif" border="0" />Læs mere</a></td></tr><tr><td id="q4" style="display: none;">Fussball<br><br><i>Lærer - Schmeichel</i><br><br>Max. elever der kan deltage i arbejdsgruppen: 23<br></td></tr></table></td></tr>
</table>

Mit problem er at når jeg har vist og skjult og så viser en af grupperne for 2. gang, så bliver det vist helt forkert hvor teksten starter i midten af siden og overskriften bliver brudt ned  på næste linie osv... Men kun i Firefox - IE virker fint.

Jeg er ik den store haj til JavaScript, så håber eksperterne har et bud :)
Avatar billede roenving Novice
26. januar 2007 - 04:28 #1
Vil gætte på, at du skal bruge display:table-cell; til dine tabelceller, prøv f.eks.

<script type="text/javascript">
    function visk(e,h){
        e = document.getElementById(e);
        p = h.childNodes[0];
        f = (e.style.display=="none")?1:0;
        p.src = (f)?"img/minus.gif":"img/plus.gif"
        e.style.display = (f)?h.parentNode.style.display:"none";
    }
</script>
Avatar billede hav0k Nybegynder
26. januar 2007 - 12:42 #2
Det var sgu rigtig. Takker mange gange!

og et svar, tak :)
Avatar billede psykochicken Nybegynder
26. januar 2007 - 12:51 #3
jeg er lige med på en "lurer".

Firefox vil gerne arbejde med display:table-cell, men IE7 kan ikke lide den.
------------------------------------
Roenving >> kan du lokkes til at forklare, hvorfor h.parentNode.style.display virker ?

/psc
Avatar billede roenving Novice
27. januar 2007 - 00:27 #4
-- den virker sandsynligvis ved at den returnerer en tom streng !-)

-- og hvis der returneres en tom streng, sættes propertyen til default-property, uanset om den er defineret af et browser-native stylesheet eller i et bruger-stylesheet defineret i sammenhæng med html-dokumentet !o]

Velbekomme '-)
Avatar billede psykochicken Nybegynder
27. januar 2007 - 01:01 #5
ach so, når tom streng returneres løber den hjem til mor ;o)

roenving >> Takker for lidt lærdom...og en godbid til dig: http://www.eksperten.dk/spm/758676.

/psc
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester