2012-04-10 18 views
0

Ich denke, das sollte eine einfache Frage sein, aber ich habe Probleme herauszufinden. Ich habe zwei divs innerhalb eines Elternteils div und ich möchte die Farbe von genau dem richtigen div (javascript) ändern. Mein Code durchläuft die untergeordneten divs und ändert dann die Farbe von beiden. Ich kann nicht herausfinden, wie man genau das richtige div auswählt und seine Farbe ändert. Hier ist mein Code (dies ändert die Farbe von beiden):Farbe der Div dynamisch ändern - Javascript

var color = "#fdd42e"; 
    var element = document.getElementById(user_id).childNodes; 

    for (i=0;i< element.length;i++) { 

     if(element[i].id = 'right') { 
      element[i].style.background = color; 
     } 
     else { 
     } 

    } 
+0

Ihre 'I' Variable ist global, das ist eine sehr schlechte Sache (man stelle sich eine andere Funktion aufrufen, die auch über i innerhalb dieser Schleife Schleifen). Verwenden Sie 'for (var i = 0; ....)' anstatt – ThiefMaster

+0

Warum geben Sie dem gewünschten div keine ID oder einen Namen, damit Sie direkt darauf verweisen können ...? – Dutchie432

+0

Name? Schlechte Idee. ICH WÜRDE? Gute Idee. – ThiefMaster

Antwort

5

Ich kann nicht herausfinden, wie genau die richtige div auszuwählen und seine Farbe ändern.

Verwenden == statt =:

if(element[i].id = 'right') { 
       ^
      -----| 
+0

oder '===' anstelle von '=='. – Saxoier

+0

Ich wusste, es wäre etwas Einfaches. Vielen Dank! – mkyong