有一些问题相似,但要么过于宽泛,要么没有显示良好的示例代码。
我想要做的就是,如果用户点击了跨度bButton
,那么selected
类将从所有其他跨度中删除,并替换为notSelected
类。
<div id="mainNav">
<span id="aButton" class="button selected">a</span>
<span id="bButton" class="button notSelected">b</span>
<span id="cButton" class="button notSelected">c</span>
</div>
这是什么jQuery解决方案?
谢谢!
答案 0 :(得分:5)
notSelected
类。selected
类添加到单击的元素。selected
课程。notSelected
课程添加到所有兄弟姐妹。
$('#mainNav > span').click(function() {
$(this)
.removeClass('notSelected')
.addClass('selected')
.siblings()
.removeClass('selected')
.addClass('notSelected');
});
作为旁注,我不打算使用notSelected
类。
您可以决定是否存在selected
选择了哪个元素。如果元素没有selected
类,则不会选中它。
答案 1 :(得分:0)
试试这个:
$('span').click(function(){
$(this).parent().children('span').each(function(){
$(this).removeClass('selected').addClass('notSelected');
});
$(this).removeClass('notSelected').addClass('selected');
});
答案 2 :(得分:0)
$('span').live('click',function(){
$(this).removeClass('notSelected');
$(this).addClass('selected');
$(this).siblings().each(function(){
$(this).removeClass('Selected');
$(this).addClass('notSelected');
});
});