在jQuery中,如何判断当前对象是否隐藏?

时间:2009-02-04 16:28:07

标签: javascript jquery css

在我打电话之前:

$('myObject').show();

我想知道它目前是隐藏还是可见。

4 个答案:

答案 0 :(得分:40)

有两种方法可以做到,我知道:

if ($('#something').is(':hidden')) { }

if ($('#something').is(':visible')) { }

他们都应该工作。

您也可以这样做:

$('#something:hidden').show();
$('#something:visible').hide();

如果项目已被隐藏,则只会调用.show();如果项目已经可见,则只调用.hide()。

答案 1 :(得分:10)

您也可以使用切换$(this).toggle();

答案 2 :(得分:9)

您可以使用css()函数进行测试:

if ($('myObject').css('display') == 'none') {
  $('myObject').show();
}

编辑:

不知道:隐藏选择器有多酷。我的建议对于测试其他属性仍然有用,但Alex的建议在这种情况下更好。

答案 3 :(得分:3)

来自jQuery FAQ

 var isVisible = $('myObject').is(':visible');
 var isHidden = $('myObject').is(':hidden');