javascript - 如何每 5 秒检查一次 Div 是否可见,如果可见,显示另一个 div?

标签 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>

最佳答案

您在 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",您将看到 5 秒后按钮将被隐藏。

关于javascript - 如何每 5 秒检查一次 Div 是否可见,如果可见,显示另一个 div?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37394762/

相关文章:

javascript - 如何在 Chrome 开发者工具中找到 'add watch'?

c# - 使用 asp.net 打开新窗口

javascript - 如何在 Android 中使用 Duktape 访问 Javascript 模块

javascript - 脚本在 JSfiddle 中运行但不在浏览器上运行

java - 如何取消转义 HTML 实体但保持 XML 实体不变?

javascript - 在 Javascript 中将 dd-mm-yyyy 格式转换为 mm-dd-yyyy 格式的更简洁方法

jquery - 位置方法而不是 jquery 事件中的选择器

javascript - Bootstrap carousel-control 正在获取图像

jquery - 每个元素的动画

html - 选择元素 - 防止选择更改