2011-12-06 15 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、ありがとう!私はちょうどそれに気づいた! –

+0

ビンゴ!感謝ジェームス。まさに私が探していたもの。 – rennacs

+0

泣き声ジェームズの解明フィンとその近さは、彼の元の投稿でそれを逃した最良のオプションです。 –

関連する問題