Avatar billede ofirpeter Nybegynder
27. juli 2006 - 17:16 Der er 4 kommentarer og
1 løsning

funktion virker ikke

Hej, jeg bruger følgende script til at vise/skjule en liste med kategorier fra brugeren, afhængigt af hvad denne vælger:

function toggleTR(tr,btn) {
  if (tr.style.display != 'none') {
    tr.style.display = 'none';
    btn.innerHTML = '<img src="billeder/vis_kategorier.gif" border="0" alt="Vis kategorier"/>';
    }
   
  else {
    tr.style.display = '';
    btn.innerHTML = '<img src="billeder/skjul_kategorier.gif" border="0" alt="Skjul kategorier"/>';
    }
}


Nu ønsker jeg at den skal være skjult fra start. Jeg har derfor prøvet at blot køre toggleTR(rubrik,this) i starten af scriptet:
..
toggleTR(rubrik,this)
function toggleTR(tr,btn) {
  if (tr.style.display != 'none') {
....

Hvorfor virker dette ikke?
Avatar billede mclemens Nybegynder
27. juli 2006 - 20:16 #1
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><title>Ingen titel</title>
<script type="text/javascript">


function toggleTR(tr,btn) {
  if (tr.style.display != 'none') {
    tr.style.display = 'none';
    btn.innerHTML = '<img src="billeder/vis_kategorier.gif" border="0" alt="Vis kategorier"/>';
    }
 
  else {
    tr.style.display = '';
    btn.innerHTML = '<img src="billeder/skjul_kategorier.gif" border="0" alt="Skjul kategorier"/>';
    }
}

window.onload=function(){toggleTR(rubrik,rubrik);}

</script>
</head><body>
<div id="rubrik">a</div>
</body></html>
Avatar billede mclemens Nybegynder
27. juli 2006 - 20:22 #2
- og hvis FF skal være med:


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><title>Ingen titel</title>
<script type="text/javascript">


function toggleTR(tr,btn) {
  if (tr.style.display != 'none') {
    tr.style.display = 'none';
    btn.innerHTML = '<img src="billeder/vis_kategorier.gif" border="0" alt="Vis kategorier"/>';
    }
 
  else {
    tr.style.display = '';
    btn.innerHTML = '<img src="billeder/skjul_kategorier.gif" border="0" alt="Skjul kategorier"/>';
    }
}

window.onload=function(){toggleTR(document.getElementById("rubrik"),document.getElementById("rubrik"));}

</script>
</head><body>
<div id="rubrik">a</div>
</body></html>
Avatar billede mclemens Nybegynder
27. juli 2006 - 20:53 #3
Problemet var at dom ikke er
klar før elementerne lægger i dom
window.onload=function(){/* script */}
- en betingelse på onload sørger for at de er klar...
Avatar billede ofirpeter Nybegynder
28. juli 2006 - 11:22 #4
Mange tak for hjælpen!
Avatar billede mclemens Nybegynder
28. juli 2006 - 11:30 #5
Velbekom, og tak for point :o)
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