2011-12-06 6 views
2

중첩 된 메뉴에 클래스를 추가하는 데 문제가 있습니다. 클래스 get-view가있는 링크를 클릭하면 클릭 한 링크를 포함하여 클래스 nav-item과 함께 포함 된 div 내의 모든 링크에 클래스를 추가해야합니다. 나는 div를 선택하고 내부의 모든 링크에 클래스를 적용하는 방법을 완전히 잃어 버렸습니다. 어떤 도움이라도 대단히 감사합니다.상위를 가져 와서 모든 링크에 클래스 추가

내 HTML이 일을해야이

<div class="nav-item"> 
    <a href="1.html" class="get-view subnav-main"><span>Main Link 1</span></a> 
</div> 
<div class="nav-item"> 
    <a href="2.html" class="get-view subnav-main"><span>Main Link 2</span></a> 
</div> 
<div class="nav-item"> 
    <div class="subnav-main subnav-more"> 
     <a href="3.html" class="get-view subnav-main"><span>Main Link 3</span></a> 
     <div class="subnav-subnav subnav-closed"> 
      <a href="3.html" class="get-view">Sublink 1</a><br /> 
    <a href="4.html" class="get-view">Sublink 2</a><br /> 
    <a href="5.html" class="get-view">Sublink 3</a><br /> 
     </div> 
    </div> 
</div> 

답변

3

과 같습니다

$(".get-view").click(function() { 
    // Remove [YourClass] from any element that might already have it 
    $(".YourClass").removeClass("YourClass"); 

    //Add [YourClass] based on your requirements 
    $(this).closest(".nav-item").find("a").addClass("YourClass"); 
}); 

여기 a working fiddle을합니다.

+0

@thirtydot, thanks! 나는 단지 그것을 알아 차렸다! –

+0

빙고! 감사합니다 제임스. 정확히 내가 무엇을 찾고 있었는지. – rennacs

+0

지우기 지느러미와 가장 가까운 것이 가장 좋은 옵션은 원래 게시물에서 놓친 것입니다. –

관련 문제