2013-08-29 2 views
2

의 내용에 따라 부모 DIV에 클래스를 추가 나는 다음과 같은 HTML을하고 난 클래스 = ... teaser_title에 따라, "boxgrid"특정 사업부

<div class="boxgrid"> 
    <img src="my_image1.jpg" alt="Image 1"> 
    <div class="cover boxcaption"> 
      <div class="teaser-title">Image 1</div> 
    </div> 
</div> 

<div class="boxgrid"> 
    <img src="my_image2.jpg" alt="Image 2"> 
    <div class="cover boxcaption"> 
      <div class="teaser-title">Image 2</div> 
    </div> 
</div> 
있는 부모 DIV 클래스에 클래스를 추가 할 다음

지금,이 코드 ...

$('.teaser-text').each(function() { 
     var teasertext = $('.teaser-text').text().replace(/ /g,"_").toLowerCase(); 
     $('.boxgrid').addClass(teasertext); 
}); 

상기 코드 출력을 시도했다.

<div class="boxgrid **image_1image_2**"> 
    <img src="my_image1.jpg" alt="Image 1"> 
    <div class="cover boxcaption"> 
      <div class="teaser-title">Image 1</div> 
    </div> 
</div> 

내가 뭘 잘못 했니? 이 작은 문제로 저를 도우려는 사람. 감사합니다 ..

+3

HTML에'teaser-text' 클래스의 div가 없습니다. –

답변

2

사용 $(this)

.closest()

$('.teaser-text').each(function() { 
     var teasertext = $(this).text().replace(/ /g,"_").toLowerCase(); 
     $(this).closest('.boxgrid').addClass(teasertext); 
}); 
+0

미안 .. 그게 클래스 = '티저 제목'.. 어쨌든, 내 문제를 해결 .. 고마워 .. – kaluka19

2

당신은 '.boxgrid'클래스 이름을 가진 요소에 클래스를 추가한다. 그래서 'boxgrid'클래스로 첫 번째 div를 찾을 수 있습니다. 이 클래스 이름으로 가장 가까운 요소를 찾을 수

$(this).closest('.boxgrid').addClass(teasertext); 

대신 $('.boxgrid').addClass(teasertext);

사용이의

는 'boxgrid'.

+0

예, .closest 내 질문에 대답 .. 감사합니다 모두 .. Logged – kaluka19