如何检查HTML元素是否被隐藏?

时间:2014-03-24 13:40:35

标签: javascript jquery html

我有两个元素(setProject和setHdc)。单击时,它们会显示其他表格元素。但我想只让一组表格元素同时出现。例如,当用户点击" setProject"时," setHdc"元素必须隐藏。否则相同。我有什么方法可以做到如果判断?或者有更简单的方法吗?

<script> 
$(document).ready(function(){
  $("#setProject ").click(function(){
    $("#test1").fadeToggle("fast");
    $("#projectTable1").fadeToggle("fast");
    $("#projectTable2").fadeToggle("fast");
    $("#projectTable3").fadeToggle("fast");
  });
});
$(document).ready(function(){
  $("#setHdc").click(function(){
    $("#hdcTable1").fadeToggle("fast");
    $("#hdcTable2").fadeToggle("fast");
  });
});
</script>

3 个答案:

答案 0 :(得分:8)

你应该使用

 if($(this).is(':visible')){
     doSomething();
 }else{
     doSomethingElse();
 }

else部分仅适用于display:none的元素。具有visibility:hidden/opacity:0的元素将被视为可见

答案 1 :(得分:4)

使用:visible选择器

if($('#element').is(':visible'))
{
    //write the code for visible
}
else
{
    // write the invisible code
}

答案 2 :(得分:0)

$(document).ready(function(){
    $("#setProject ").click(function(){
        $("#setHdc").hide();
        $("#test1").fadeToggle("fast");
        $("#projectTable1").fadeToggle("fast");
        $("#projectTable2").fadeToggle("fast");
        $("#projectTable3").fadeToggle("fast");
    });
    $("#setHdc").click(function(){
        $("#setProject").hide();
        $("#hdcTable1").fadeToggle("fast");
        $("#hdcTable2").fadeToggle("fast");
    });
});

只需隐藏每个元素的.click事件上的对立元素。