更改ul的样式onclick - css / jquery

时间:2013-06-12 16:19:58

标签: jquery css

我有一个简单的菜单,其中包含一些<ul>个加载其内容的菜单。 我想在加载属于它的内容时改变每个ul的样式。 这是菜单:http://jsfiddle.net/EPvGf/11/

2 个答案:

答案 0 :(得分:3)

我建议:

$(this).closest('ul').addClass('newStyle');

虽然在点击处理程序中(假设嵌套的ul元素):

$('li').click(function(e){
    $(e.target).closest('ul').addClass('newStyle');
});

JS Fiddle demo

参考文献:

答案 1 :(得分:1)

我认为你的意思是在默认情况下为第一个设置相应的父li(边框底部使用类current)。你可以试试这个:

$('.current').not(
             $(this)
               .closest('li')
               .addClass('current'))
.removeClass('current');

或只是

$(this)
       .closest('li') //Get to the parent li
       .addClass('current') //add the class current
       .siblings('.current') // select the sibling with the same class  (previous selection)
       .removeClass('current'); //remove the class from there

Demo