0

私の英語が下手なのでごめんなさい!しかし、私はこのような問題を抱えています。

  1. これは私のhtmlコードです(これはメニューの複数レベルであり、レベルメニューは動的です)

    <!-- menu level 1-->
     <ul class='ul_parent'>
       <li>
          <a href='#' class='fNiv'>home</a>
       </li>
       <li>
          <a href='#' class='fNiv'>News</a>
       </li>
       <li>
          <a href='#' class='fNiv'>Product</a>
          <!-- menu level 2-->
          <ul class='ul_childrent'>
            <li>
                <a href='#'>Type 1</a>
                <!-- menu level 3-->
                <ul class='ul_childrent'>
                     <li>
                         <a href='#'>Type 1.1</a>
                         <!--........-->
                         <!-- menu level n-->
                         <!-- ........-->     
                         <ul class='ul_childrent'>
                             <li><a href='#' class='menu_level_n'>Type 1.1...n</a></li>
                         </ul>
                     </li>
                     <li><a href='#'>Type 1.2</a></li>
                     <li><a href='#'>Type 1.3</a></li> 
                </ul>
           </li>
            <li><a href='#'>Type 2</a></li>
            <li><a href='#'>Type 3</a></li>
          </ul> 
       </li>
     </ul>
    
  2. ' ' をクリックすると、.menu_level_nメニュー レベル 1 がアクティブ (メニュー クラス.fNiv) に設定されます。これにより、jquery がコーディングされる場合があります (機能しません)。

    $(document).ready(function(){
                 $('.menu_level_n').click(function(){
                     $(this).parents('.fNiv').addClass('active');
                 });
           });
    

私を助けてください!どうもありがとう。

4

4 に答える 4

0

セレクターを持つ要素'.fNiv'は、クリックしたアイテムの親ではありません。このセレクターを持つ要素を持つ親を直接の子として見つける必要があります。

$(this).parents().children('.fNiv').last().addClass('active');

JSFiddle

于 2013-04-15T10:49:44.350 に答える
0

あなたが使用することができeq()ますsiblings()..

 $('.menu_level_n').click(function(){
  $(this).parents().eq(5).siblings('.fNiv').addClass('active');
 });

eq(5)あなたのliは第5レベルの親であり兄弟です()

于 2013-04-15T10:54:48.140 に答える
0

変化する:

$(this).parents('.fNiv').addClass('active');

$(this).parents("li").find('.fNiv').addClass('active');
于 2013-04-15T10:50:49.453 に答える
0

これが作業中のものです

  $(document).ready(function(){
         $('.menu_level_n').click(function(){
             $(this).parents('li').last().find('.fNiv').addClass('active');
         });
   });
于 2013-04-15T10:50:57.593 に答える