[HTML/CSS/JS] Div's verbergen

Pagina: 1
Acties:

  • prutsger
  • Registratie: Oktober 2001
  • Laatst online: 31-03 16:05
Ik zit met het volgende probleem:

Ik heb een vijftal menuopties met subopties in div's staan. Als ik op het hoofditem klik moet de div eronder, met de subopties, zichtbaar worden. Nu wil ik dat als bijvoorbeeld menuoptie 2 opengeklapt staat en ik klik op menuoptie 1, dat 2 sluit en 1 opent. Oftewel er is altijd maar 1 menu opengeklapt. Hiervoor gebruik ik de volgende functie:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
function toggle( targetId )
{
  if (document.getElementById)
  {
    var menuitems = new Array()
    menuitems[0] = 'over'
    menuitems[1] = 'diensverlening'
    menuitems[2] = 'nieuws'
    menuitems[3] = 'artikelen'
    menuitems[4] = 'vacatures'
  
    //CLOSE ALL MENU'S
    for(var i=0; i < menuitems.length; i++)
    {
      document.getElementById(menuitems[i]).style.display = "none";
    }
    
    //OPEN CLICKED MENU
    document.getElementById(targetId).style.display = "block";
  }
}


Nu geeft ie altijd op regel 15 de foutmelding
code:
1
Error: document.getElementById(menuitems[i]) has no properties

terwijl het menu wel dichtklapt. Echter gaat het script niet verder om het aangeklikte menu te openen.

Ik heb gezocht op w3schools, GoT etc maar kom er niet uit. Ik vind alleen maar info over de werking van 'getElementById' en dat het zo zou moeten werken. Maar de praktijk wijst dus uit dat ik toch iets niet goed doe :/

  • André
  • Registratie: Maart 2002
  • Laatst online: 07-04 14:13

André

Analytics dude

Je weet zeker dat al die 5 id's bestaan?

  • prutsger
  • Registratie: Oktober 2001
  • Laatst online: 31-03 16:05
André schreef op woensdag 08 maart 2006 @ 11:51:
Je weet zeker dat al die 5 id's bestaan?
Dat zo'n simpele vraag al tot de oplossing kan leiden he _/-\o_

'diensverlening' moet natuurlijk 'dienstverlening' zijn en dan werkt alles wel.
Had ik nou twee weken terug maar geen koffie over mijn toetsenbord gegooid waardoor de t het soms niet doet...

Hulde, het werkt dus!

Verwijderd

De jongens van moo.Fx (http://moofx.mad4milk.net/) hebben een generieke oplossing voor wat je doet, in de examples staat 't uitgelegd (accordion effect).

offtopic:
Overigens heb je in je nick ook een typo, weer die t zeker :P