使用Jquery进行简单选择

使用Jquery进行简单选择,jquery,css,Jquery,Css,我只有三个背景颜色都是蓝色的div 我需要jQuery使每个框都可选择。 单击/选择该框时,jQuery应将具有不同背景颜色的class.selected添加为红色。单击其他div时,所有未选中的其他div应变回蓝色 这是css .block { width: 300px; padding: 10px; background: blue; color:white; margin-top:5px; } .selectable { backgroun

我只有三个背景颜色都是蓝色的div

我需要jQuery使每个框都可选择。
单击/选择该框时,jQuery应将具有不同背景颜色的class.selected添加为红色。单击其他div时,所有未选中的其他div应变回蓝色

这是css

.block {
    width: 300px;
    padding: 10px;
    background: blue;
    color:white;
    margin-top:5px;
}

.selectable {
    background: red;
}
这是html

<div class="block">
    Some stuff here
</div>

<div class="block">
    Some stuff here
</div>

<div class="block">
    Some stuff here
</div>

这里有些东西
这里有些东西
这里有些东西
​我如何使用jQuery实现它?

下面是所有实际的

代码非常简单

$('.block').click(function() {
  $(this).toggleClass('selected'); // if it has the class, it will take it away, if it doesn't have it, it will add it.
});
如果元素是同级元素,则可以使用:

$(".block").on("click", function() {
    $(this).addClass("selectable").siblings().removeClass("selectable");
});
或:

试试这个

$('.block').click(function() {
    $('.block').removeClass('selectable');
    $(this).addClass('selectable');
});​
这应该起作用:

$('.block').click(function() {
    $('.selected').removeClass('selected')
    $(this).addClass('selected');
});

我的方法是在单击时取消选择所有其他div,然后切换单击的div(以允许取消选择):


更新。

-1
用于过于简化。。并没有改变其他的div,正如OPOn第二次思考所要求的,这一个是为我做的!令人惊叹的!谢谢这很有趣。李的兄弟姐妹?@wolverene我不明白你的问题是什么-你能解释一下吗?(
这很有趣。李的兄弟姐妹?
)@NULL对不起,请忽略这个问题。因为我仍然需要完全理解兄弟方法是什么。还在学习。但是现在我开始看到jquery是多么的神奇,它有着无限的潜力。我从这篇文章中学到了很多!谢谢
$('.block').click(function() {
    $('.selected').removeClass('selected')
    $(this).addClass('selected');
});
​$('.block').click(function() {
    $('.block').not($(this)).removeClass('selectable');
    $(this).toggleClass('selectable');
});​​​​​