我的HTML设置如下。
<div id="A" class="square channels blue">A</div>
<div id="B" class="square channels blue">B</div>
<div id="C" class="square channels blue">C</div>
我想要做的是获取所选id
的{{1}} ...就像这样:
class
现在我要做的是隐藏“频道”类的所有其他实例,但显示(即不隐藏)所选的那个。换句话说,隐藏类“通道”的所有实例,除了点击的那些实例。
这显然不起作用,但不确定如何做到这一点:
$('.channels').click(function() {
alert(this.id ) //This gets me the right `id`
});
答案 0 :(得分:4)
您可以使用 .not 选择器:
$('.channels').on('click', function(e) {
$('.channels').not(this).hide();
});
示例:
$('.channels').on('click', function(e) {
$('.channels').not(this).hide();
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="A" class="square channels blue">A</div>
<div id="B" class="square channels blue">B</div>
<div id="C" class="square channels blue">C</div>
&#13;
答案 1 :(得分:1)
我想这个
$("#" + this.id).show();
会奏效。
答案 2 :(得分:1)
你可以这样做
$('.channels').click(function() {
$('.channels').hide();
$("#"+$(this).id).show();
});
没有#,它将不会使用id。
答案 3 :(得分:1)
即使这个解决方案也可以使用
$('.channels').click(function() {
$('.channels').hide();
$(this).show();
});