如何检查Divs是否可见,如果是,则显示另一个div?

时间:2016-05-23 15:19:57

标签: javascript jquery html css

我正在尝试检查所有div是否可见,如果它们不显示包含提交按钮的div。所有的div基本上都是验证器,只显示是否有错误。这是因为我不能使用Jquery验证器。我在计时器上执行此操作,因此它可以每5秒检查一次,而不是使用按钮。此外 - 无法将验证链接到按钮。

我尝试了什么:
JS:

     window.setInterval(function(){
     if ($(".needData:hidden").length == 0) {
         $(".answer").show();
         $(".pleaseval").hide();

    }else{
         $(".answer").hide();
         $(".pleaseval").show();
             }       
        }, 5000);

HTML:

div id="myClass" class="needData" style="display:none">hidden</div>
div id="myClass1" class="needData" style="display:none">hidden</div>
div id="myClass2"  class="needData" style="display:none">hidden</div>
div id="myClass3" class="needData" style="display:none">hidden</div>
<div class="pleaseval">Please fill out form</div>

<div id="answer" class="answer"><button>button</button></div>

1 个答案:

答案 0 :(得分:1)

您在js中定位.answer,但实际上您不需要#answer吗?

像这样:

window.setInterval(function(){
     if ($(".needData:visible").length == 0) {
         $("#answer").show();
         $(".pleaseval").hide();

    }else{
         $("#answer").hide();
         $(".pleaseval").show();
    }       
}, 5000);

在这里你可以看到它的测试https://jsfiddle.net/8bL8ywzu/

如果您从一个元素中删除style="display:none",您将会看到隐藏5s按钮后。