どのようにメニューをループすると、クラスを削除してから、現在のメニュー項目にクラスを追加

StackOverflow https://stackoverflow.com/questions/2441412

質問

私は、コンテンツスライダーパネルをナビゲートするために使用され、このメニュー構造を持っています。

 <div id="menu">
  <ul>
    <li><a href="#1" class="cross-link highlight">Bliss Fine Foods</a></li>
    <li><a href="#2" class="cross-link">Menus</a></li>
    <li><a href="#3" class="cross-link">Wines</a></li>  
    <li><a href="#4" class="cross-link">News</a></li>   
    <li><a href="#5" class="cross-link">Contact Us</a></li> 
  </ul>
</div>

私は、これらの要素をループしたいとハイライトクラスを削除してから、最後の/現在のクリックされたメニュー項目にハイライトクラスを追加することになります。

任意のアイデア?任意の助けいただければ幸いです。

おかげ

ジョナサン

役に立ちましたか?

解決

そうすることできますか?

$('#menu li a').click(function(){
  $('#menu li a').removeClass('highlight');
  $(this).addClass('highlight');
});

他のヒント

...your <head> and opening <body> tags...
<div id="menu">
   <ul>
     <li><a href="#1" class="cross-link highlight">Bliss Fine Foods</a></li>
     <li><a href="#2" class="cross-link">Menus</a></li>
     <li><a href="#3" class="cross-link">Wines</a></li>  
     <li><a href="#4" class="cross-link">News</a></li>   
     <li><a href="#5" class="cross-link">Contact Us</a></li> 
  </ul>
</div>
<script type="text/javascript">
(function( $ ) {
 $( "#menu ul li a" ).click( function() {
    $( this ).parent().parent().filter( 'a' ).removeClass( 'highlight' );
    $( this ).addClass( 'highlight' );
 });
})( jQuery );
</script>
</body>
</html>
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top