webForumDet fria alternativet
Logga in / Bli medlem

For-loop

JavaScript

4 svar · 377 visningar · startad av ejick

Medlem sedan mars 2001895 inlägg
Frågan#1

Hej,

tänkte förenkla ett script som i dagsläget är hård-kodat, men jag får det inte att bli rätt i en for-loop. Följande fungerar dock

for (var j = 1; j < 11; j++) {alert('document.getElementById("layer'+j+'");');}

Alltså att ett alert-fönster visar document.getElementById("layer1"); och vidare tills layer är 10. Nu är det så att jag vill skapa en variable som atar olika världen varje varv i loopen och resultatet ska alltså vara

for (var j = 1; j < 11; j++) {var variabel = document.getElementById("layer+j");}

om man säger så, dock fungerar inte detta. Undrar om någon har koll på hur jag kan göra, har försökt men lyckas inte komma fram till rätt lösning.

Tacksam för svar

Medlem sedan mars 20007 896 inlägg
#2

Lagret heter ju inte "layer+j", det heter "layer" + j.

Vad för egenskaper i lagret vill du sätta in i variabeln?
Typ:

var v = document.getElementById('layer' + j).innerHTML;
Medlem sedan mars 2001895 inlägg
#3

Jag skapar variabeln för att använda funktionen removeChild senare. Alltså att jag vill ta bort en del i varje lager.

Medlem sedan aug. 20039 340 inlägg
#4

Till removeChild ska du inte använda innerHTML. Variabeln bör nog deklareras så här:

var v = document.getElementById('layer' + j);

Om du ska köra removChild först efter for-loopen bör du tänka på att lägga referenserna i en array.

Medlem sedan mars 2001895 inlägg
#5

removeChild kommer att användas i och med for-loopens antagna värden på layer.

258 ms totalt · 4 externa anrop · v20260731065814-full.05830320
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)