Jquery 隐藏类的所有实例,但单击的一个类的id除外
我的HTML设置如下Jquery 隐藏类的所有实例,但单击的一个类的id除外,jquery,html,Jquery,Html,我的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> 现在我要做的是隐藏通道类的所有其他实例,但显示,即不隐藏所选的实例。换句话说,隐藏类通道的所有实例,单击的实例
<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>
现在我要做的是隐藏通道类的所有其他实例,但显示,即不隐藏所选的实例。换句话说,隐藏类通道的所有实例,单击的实例除外
这显然不起作用,但不确定如何做到:
$('.channels').click(function() {
$('.channels').hide();
$(this.id).show();
});
我觉得这个
$("#" + this.id).show();
会有用的。我想这个
$("#" + this.id).show();
会有用的。你可以这样做
$('.channels').click(function() {
$('.channels').hide();
$("#"+$(this).id).show();
});
如果没有,它将不会使用id。您可以这样做
$('.channels').click(function() {
$('.channels').hide();
$("#"+$(this).id).show();
});
如果没有,它将不使用id。即使此解决方案也可以工作
$('.channels').click(function() {
$('.channels').hide();
$(this).show();
});
即使这个解决方案也会奏效
$('.channels').click(function() {
$('.channels').hide();
$(this).show();
});
您可以使用.not选择器:
$('.channels').on('click', function(e) {
$('.channels').not(this).hide();
});
例如:
$'.channels'。单击,函数E{
$'.channels'.notthis.hide;
};
A.
B
C您可以使用.not选择器:
$('.channels').on('click', function(e) {
$('.channels').not(this).hide();
});
例如:
$'.channels'。单击,函数E{
$'.channels'.notthis.hide;
};
A.
B
CHadn甚至一点也没有想到这一点!我喜欢这一个。我最喜欢这个解决方案,因为隐藏所有内容,然后显示单击的内容似乎有点不雅观。我甚至没有想到这一点!我喜欢这个。我最喜欢这个解决方案,因为隐藏所有内容,然后显示单击的内容似乎有点不雅观。我不明白为什么要使用构造$+$this.id。为什么不在其他例子中这样做呢?还有一个好处是元素不需要id。解决方案不需要id。但他需要知道自己犯了什么错误。@AnilM谢谢……额外的见解很有帮助。我不知道我可以只做$this我不明白为什么要使用构造$+$this.id。为什么不在其他例子中这样做呢?还有一个好处是元素不需要id。解决方案不需要id。但他需要知道自己犯了什么错误。@AnilM谢谢……额外的见解很有帮助。我不知道我可以这么做