2013-05-29 3 views
0

Я хочу, чтобы заполнить Differents дивы с четырьмя цветами, используя только Javascript (с HTML-структурой отклонения от курса), вот код:Заполните DIV только с JavaScript

HTML

<div id="content"> 
    <div id="carre1" class="carre">1</div> 
    <div id="carre2" class="carre">2</div> 
    <div id="carre3" class="carre">3</div> 
    <div id="carre4" class="carre">4</div> 
</div> 

JS

var colors = { 
    count: 4, 
    tab : ["red","orange","yellow","green"]} 
    ; 

Предположим, я хочу сделать div «carre1» красным, как это сделать?

Заранее благодарен!

+0

Вы хотите, чтобы оживить цвета? –

+0

Есть много способов, которыми вы могли бы это сделать. Трудно знать правильный путь, не зная больше о том, как вы хотите, чтобы это работало. – crush

+0

Извините, не комментировали. Никакой анимации не было, и это была просто альтернатива js для css, для самой подготовки – user2172123

ответ

1
for (var i = 0; i < colors.tab.length; i++) { 
     document.getElementById("carre" + (i + 1)).style.backgroundColor= colors.tab[i]; 
+0

Почти, должен быть 'colors.tab', но достаточно близко .. [скрипка, которую я только что сделал] (http://jsfiddle.net/tbCBG /). –

+1

@ShadowWizard спасибо. Я обновил свой код – PSR

+0

Я забыл сказать, что хочу заполнить фон, а не текст. Замена «цвета» на «фон» в вашем коде работает очень хорошо, большое спасибо! – user2172123

1

Короче:

for (var i=1; i<=colors['count']; i++) { 
    document.getElementById("carre" + i).style.backgroundColor = colors['tab'][i-1]; 
} 

Смотрите эту jsfiddle.

Также работает с цветами.tab и colors.count как в этом jsfiddle.

0

Это, как вы заполнить Div с цветами, чтобы они хранятся в массиве:

carre = document.getElementsByClassName('carre'); 
for(i=0;i<colors.count;i++){ 
    carre[i].style.backgroundColor = colors.tab[i]; 
} 
0

document.getElementById("carre1").style.backgroundColor=colors.tab[0];

Смежные вопросы