<div class='hide'>A</div>
<div class='hide'>B</div>
<div class='hide' id='1'>C</div>
我有一个名为showOne的函数,它应隐藏所有元素,然后显示id ='1'的函数。
function showOne(id) {
// Hide all elements with class = 'hide'
$('#'+id).show();
}
如何在jquery中使用class ='hide'隐藏所有元素?
答案 0 :(得分:46)
尝试类似:
function showOne(id) {
$('.hide').not('#' + id).hide();
}
showOne(1);
演示:http://jsfiddle.net/aymansafadi/kReZn/
我同意@TheSystemRestart,“注意:不要只使用数字ID”。
答案 1 :(得分:5)
$('div.hide').hide(300,function() { // first hide all `.hide`
$('#'+ id +'.hide').show(); // then show the element with id `#1`
});
注意:请勿使用NUMERIC ID。不允许。 READ THIS 强>
答案 2 :(得分:5)
您必须通过css类名访问元素。为此,请使用。运算符
$('.hide').hide();
它会隐藏所有div。
现在按ID显示一个div;
$('#elemID').show();
或者您也可以使用
执行此操作$('.hide').eq(0).show();
它将显示第一个具有隐藏类的div。
答案 3 :(得分:0)
我对解决方案的简单程度感到羞愧,而且在写完问题后我才发现它。只是:
$('.hide').hide();
答案 4 :(得分:0)
尝试:
function showOne(id) {
$('.hide').hide();
$('#'+id).show();
}
答案 5 :(得分:-1)
您可以使用。隐藏所有使用class隐藏的组件 $( '隐藏')隐藏();