2015-02-04 4 views
0

내 마크 업에는 동일한 클래스의 두 div가 있습니다. 각 div에 두 개의 다른 클래스를 추가하고 싶습니다.JavaScript 또는 Jquery를 사용하여 div에 동적으로 클래스를 추가하는 방법은 무엇입니까?

내 HTML 코드는

<div class="my-class"> 
    --Content-- 
</div> 

<div class="my-class"> 
    --Content-- 
</div> 

모습입니다하지만 클래스 에있는 경우 두 개의 사업부 그래서

<div class="my-class class-1"> --Content-- </div> <div class="my-class class-2"> --Content-- </div> 

으로, "내 수준"
, 내가 원하는 것을 원하는 Class- (1 - N)처럼 div에 추가 클래스를 추가합니다. 어떻게하면됩니까?

+0

어떻게 동적으로 생성 된 콘텐츠를 추가 하시겠습니까? – Satpal

+1

비트 OT : 스타일을 지정하거나 나중에 DIV를 식별하기 위해'class' 속성을 사용하고 있습니까? 신원을 확인하려면 아래 답변에 표시된 기술 중 하나를 사용하여 클래스 이름 대신 각 클래스에 'ID'속성을 부여하는 것이 좋습니다. – SaschaM78

+0

가능한 복제 http://stackoverflow.com/questions/12610686/jquery-class-add-an-increment-to-it – abhiklpm

답변

1
var c = 1; 
$(".my-class").each(function(){ 
$(this).addClass("class-" + c); 
c++; 
}); 
+1

'each'함수 – Dieterg

+0

예, it 'iterator도 사용할 수 있습니다. –

+0

내 솔루션에서 찾을 수있는 한 가지 문제는 jQuery의 각 기능이 매우 느리다는 것입니다. 루프 용 JavaScript를 사용하는 것이 좋습니다. 어느 쪽이든, 이것은 쉽게 이해할 수있는 일을하게하는 해결책입니다. –

0

원하는 내용 일 수도 있습니다.

var classes = document.querySelectorAll('.my-class'); 
for(var i=0;i<classes.length;i++){ 
    classes[i].classList.add('class-'+i); 
    //classes[i].className += 'class-'+i; -> older browsers 
} 
2

이런 일에 대해 어떻게 :

$('.my-class').each(function(ind, ele) { 
    var id = (ind+1); 
    $(ele).addClass('class-' + id); 
}); 

Check out the fiddle

+1

@MurtazaHussain ... 당신은 무엇을 의미합니까? '각자 '없이 어떻게 하시겠습니까? –

0

나는 또한 .each() 기능을 사용하는 것이이 여기에 예를 들어 jsfiddle이다.

$(".my-class").each(function(i) { 
$(this).addClass("yourClass"+(i+1)); 
}); 

이것은 마법을 수행합니다.

희망 하시겠습니까?

관련 문제