2016-01-07 2 views
0

Я пытаюсь дать каждое .scan нового класса, но с увеличением колаCounting классы друг с

Что я попробовал был с помощью каждую функцию из JQuery, а затем с помощью $ (это), но $ (это) будет всегда содержать только имя класса, чтобы каждый .scan был изменен.

$(".scan").each(function() { 
    i = 0; 
    $(this).addClass("count"+i); 
    i++; 
}); 

Результат был

<div class="scan count0"></div> 
<div class="scan count0"></div> 

Но что я хочу

<div class="scan count0"></div> 
<div class="scan count1"></div> 

Вот Fiddle с моим текущим состоянием.

Каждый tipp/help высоко ценится.

ответ

5

т.е. потому, что я определен внутри каждого method.You необходимо установить Ценю вне каждого метода:

var i = 0; 
$(".scan").each(function() { 
    $(this).addClass("count"+i); 
    i++; 
}); 

Однако вы можете использовать индекс параметра аргумент по умолчанию для каждой функции, чтобы дать incremenetal класса суффикс:

$(".scan").each(function(i){ 
    $(this).addClass("count" + i); 
}); 

Working Demo with .each

или использовать функцию обратного вызова addClass() метод:

$(".scan").addClass(function(i){ 
    return "count" + i; 
}); 

Working Demo with .addClass

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