我正在尝试更改单击时列表元素的样式,使其具有黑色背景和白色文本。当我单击另一个时,我希望它返回到白色背景和黑色文本的基本状态。我遇到的问题是当我单击第二个列表元素时,第一个保留了 JS 中生成的样式。这不是我想要的。
这是HTML:
<ul class="menu">
<li>
<a href="#">Item One</a>
</li>
<li>
<a href="#">Item Two</a>
</li>
</ul>
这是JS
$('.menu > li > a').click(function(){
$(this).css({
'background-color': 'black',
'color': 'white'
});
$(this).siblings('.menu > li > a').css({
'background-color': 'white',
'color':'black'
});
});
我知道我可能只是针对错误的东西,我尝试了多种方法,但我似乎无法弄清楚。我想我也把父母、孩子和兄弟树混在一起了。任何帮助是极大的赞赏!
这是在JSFiddle