2012-06-28 3 views
0

Я пытался оглянуться на последние полчаса, но я не думаю, что кто-то спросил об этом раньше, так как я не могу найти ответ. Как указать различные CSS для каждого элемента в массиве. Предпочтительно добавление класса к элементу массива для ограничения избыточности.Добавить уникальный CSS в различные элементы массива

var Stat = new Array();

Stat[0] = "<span class='good'>Alive</span>";

Другими словами я хочу сделать выше.

+0

Что вы имеете в виду? Ваш пример не ясен. У вас уже есть массив строк HTML и вы хотите что-то сделать с ним или хотите создать массив? Если да, то на основании каких данных? – bfavaretto

+0

Как в стороне ... Если вы просто пытаетесь применить CSS к элементам в соответствии с определенным индексом, вы можете попробовать псевдоселектор nth-child, описанный здесь: http://css-tricks.com/how -nth-ребенок-работа /. У этого есть некоторые проблемы совместимости с намного более старыми браузерами, но это должно работать. –

+0

Я думаю, что у Трейси есть то, что вам нужно, ее предложение n-го дочернего css также является маршрутом, но это CSS3. Вы также можете использовать jquery [eq] (http://api.jquery.com/eq/) ('# элемента на том же уровне дерева дерева'), чтобы выбрать элементы –

ответ

1

Чтобы заполнить массив с HTML-код/​​CSS вы можете сделать следующее:

var Stat = new Array(); 

Stat.push("<span class='good'>Alive</span>"); 

Stat.push("<span class='bad'>Dead</span>"); 

Stat.push("<span class='evil'>Hell</span>"); 

После выше вашего массива кода Stat будет иметь следующее содержание:

Stat[0] == "<span class='good'>Alive</span>"; 

Stat[1] == "<span class='bad'>Dead</span>"; 

Stat[2] == "<span class='evil'>Hell</span>"; 

Каждый push создать новая позиция массива с инкрементным индексом.

Надеюсь, он может вам помочь!

+0

Извините, все, что я не дома, прав теперь, больной домой через час. Я считаю, что использование stat.push будет работать, но будет ли оно работать, если я сделаю stat [0] .push. как только я вернусь домой, я могу предоставить вам весь мой сувенирный код, если это не сработает. – Khaza

+0

@AdrianVona, см. Обновление, которое я сделал, вы поймете лучше. –

+1

Я буду ждать дальнейшего объяснения, но atm 'stat [0] .push()' не должен работать, потому что 'stat [0]' не является массивом, он ссылается на элемент в массиве. Array.push() - метод массива, который добавит элемент в массив. –

1

Я надеюсь, что правильно понимаю ваш вопрос. Вы можете просто перебирать массив и добавлять класс с префиксом, за которым следует индекс. Пожалуйста, дайте мне знать, правильно ли я правильно задаю ваш вопрос.

var Stat = new Array(); 

for (var i = 0; i < 6; i++) { 
    Stat.push('<span class="good' + i + '">Alive</span>'); 
} 

// Produces an array with the following: 
<span class="good0">Alive</span> 
<span class="good1">Alive</span> 
<span class="good2">Alive</span> 
<span class="good3">Alive</span> 
<span class="good4">Alive</span> 
<span class="good5">Alive</span> 
Смежные вопросы