Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript:如何检查元素是否为;“显示”;在屏幕上?_Javascript_Css - Fatal编程技术网

Javascript:如何检查元素是否为;“显示”;在屏幕上?

Javascript:如何检查元素是否为;“显示”;在屏幕上?,javascript,css,Javascript,Css,第1步: 当我使用JavaScript更改元素的display属性值时,如下所示: document.getElementById("myDiv").style.display = "none"; 它会改变我在浏览器中看到的内容,但不会改变服务器端HTML脚本中的任何内容 第2步-此处的问题: 问题是,在完成上述步骤后,我稍后必须检查屏幕上是否显示了#myDiv。如果是,我会做点什么。所以我需要使用一个条件表达式,如: if (document.getElementById("myDiv").

第1步:

当我使用JavaScript更改元素的
display
属性值时,如下所示:

document.getElementById("myDiv").style.display = "none";
它会改变我在浏览器中看到的内容,但不会改变服务器端HTML脚本中的任何内容

第2步-此处的问题:

问题是,在完成上述步骤后,我稍后必须检查屏幕上是否显示了
#myDiv
。如果是,我会做点什么。所以我需要使用一个条件表达式,如:

if (document.getElementById("myDiv").style.display == "none") {
    //do something here
}
但有问题的是,这个表达式的计算结果永远不会是
true
,因为第一步并没有改变服务器端HTML的任何内容

所以我需要一种方法在这里检查JS中是否有元素显示在屏幕上?我怎么做


注意:-不建议使用JQuery。我无法使用它。

使用可见性属性

可见性:可见|隐藏|折叠|初始|继承

document.getElementById(“myDiv”).style.visibility=“hidden”

您所拥有的应该是有效的。是的,跑步

[...].style.display = "none";
不更改服务器存储的HTML但是,当您检查相同的属性时

([...].style.display == "none")
您正在检查由第一行设置的内联样式


例如,跑步

document.getElementById("aDiv").style.display = "none";
将设置
#aDiv
的内联样式属性:

<div id="aDiv" style="display: none;">



它应该更改的只是元素的内联css。它不应该改变其他任何东西。您所拥有的一切都可以正常工作->在JSFIDLE中哪里可以看到
console.log
的结果@adeneo“在JSFIDLE中我在哪里可以看到console.log的结果?”您通常会在哪里看到它们。@amphetamachine好吧,我是web编程新手,我曾经在我的IDE中用桌面编程语言看到控制台输出。对于JS,我在codeacademy.org的IDE中使用了这个函数,其余的我不知道。我不知道网络编程的控制台在哪里。所以这不是否决我的问题的理由。