jQuery将类添加到当前li并在li a中单击时删除prev li

这是html:

 

如果我按’a’链接,它会添加类’当前’来点击li并删除旧的li类? 这是我的尝试:

 $('ul li a').click(function(){ $('ul li').removeClass('current'); ... don't know here (add class to current li) ... }); 

使用.parent('li').closest('li')选择单击的

  •  $('ul li a').click(function() { $('ul li.current').removeClass('current'); $(this).closest('li').addClass('current'); }); 

    如果您使用的是最新版本的jquery,请使用(’click’)

     $('ul li a').on('click', function(){ $(this).parent().addClass('current').siblings().removeClass('current'); }); 

    这里有一个小提琴。

     $('ul li a').click(function(){ $('ul').children().removeClass('current'); $(this).addClass('current'); }); 

    希望,这对你有用..

    Rob是对的但是$('ul li.current').removeClass('current'); 对我不起作用。 以下代码有效。

     jQuery('ul li a').click(function() { jQuery('ul').children().removeClass('selected'); jQuery(this).closest('li').addClass('selected'); 

    }

     $(function(){ $('ul li a').click(function(){ var item=$(this).parent(); $('ul li').removeClass('current'); item.addClass("current") }); });​ 

    http://jsfiddle.net/z8DYP/3/

    只需将类添加this

     $(this).addClass('yourClass'); 

    也许你的意思是这个?

     $('ul li').each(function(){ var t = $(this); t.find('a').click(function() { $('ul li').removeClass('current'); t.addClass('current'); }); });