제이쿼리에 클래스 추가하고 싶은데 질문이 있습니다.
본문
단순 제이쿼리에 클래스를 추가하려면
$(this).addClass('thumb_on');
이런식으로 하는걸로 알고 있는데
이렇게 상위 클래스가 2개가 있다보니 어떻게 해야할지 모르겠습니다.
thumbnail 클래스 아래에 thumb라는 클래스가 있고 그 아래에 또 클래스를 추가하려고 합니다..
var base = $('.base');
base.addClass('base_text');
이렇게 하면
base 클래스 아래에 base_text라는 클래스를 추가한다고 하는데
클래스가 상위에 하나 더 있다보니
.. 어떻게 해야하는지 알고 싶습니다.
클래스 클래스 아래에 클래스를 추가하려면 어떤식으로 작성하여야하나요.
답변 4
var base = $('.base');
로그 찍어보시면
base는 여러개로 나옵니다.
따라서 반복문으로
$('.base').each(function(index) {
$(base[index]).addClass('base_text');
});
이런식으로 처리되어야 할거 같습니다.
jQuery는 CSS 선택자 스타일을 사용하기에 간단히 추가하려는 요소를 선택자로 선택하시면 됩니다.
$('.thumb > a').addClass('thumb_on');
혹은,
$('.thumbnail > .thumb > a').addClass('thumb_on');
와 같은 형태가 되겠죠.
다만, 성능 최적화를 위해서라도 적은 클래스명을 기입하는게 추천됩니다.
상호작용을 위한 형태나 반복문등에서는 find 혹은 filter도 자주 사용되니 검색해보셔요.
어디에 클래스를 추가한다는 말씀이신지요?
a 태그에 class를 추가한다는 건가요?