04. september 2003 - 12:23Der er
7 kommentarer og 1 løsning
Problemer med getElementById
Hvordan kan man løbe alle elements igennem, og udføre en bestemt handling på dem? Indtil videre har jeg gjort sådan: if(document.getElementById("menupunkt1")) {document.getElementById("menupunkt1").className = "fagNormalmenu"} if(document.getElementById("menupunkt2")) {document.getElementById("menupunkt2").className = "fagNormalmenu"} if(document.getElementById("menupunkt3")) {document.getElementById("menupunkt3").className = "fagNormalmenu"} if(document.getElementById("menupunkt4")) {document.getElementById("menupunkt4").className = "fagNormalmenu"}
Da jeg menupunkterne bliver dannet dynamisk. Det er altså nødvendigt at checke om de eksisterer for at undgå fejl.
Men antallet varierer! Det bliver lavet dynamisk, så det kan ikke fastlægges fra starten. Jeg prøvede som nødløsning med en for-løkke, som den du har lavet, med antal-variablen var set meget højt, men fik en fejl for
var currentCount = 0 function runThrough(){ if(document.getElementById('menupunkt'+currentCount+1)){ do whatever currentCount++ runThrough() return true; } runThrough()
ja, ok... Som koden er nu skal antalvariablen sættes inden der bliver talt op. Men det tror jeg godt jeg kan komme omkring. Er i sikre på, at syntaxen er gangbar i
for (i=1;i<=antallet;i++) { ...getElementById("menupunkt"+i)...
Jeps, minsandten om jeg ikke havde f**et det op... I får 15 point hver for den fremragende indsats, ok? Hvis du lige gider svare, ErikJ
Synes godt om
Ny brugerNybegynder
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.