简体   繁体   English

如何通过JavaScript显示隐藏的div?

[英]How to show a hidden div by javascript?

I want to hide a div if javascript is turned off and show that div if javascript enabled but I don't want to use <noscript> as in chrome and opera it has some issues. 如果要关闭javascript我想隐藏一个div ,如果启用了javascript ,我要显示该div ,但是我不想像Chrome和Opera中那样使用<noscript> ,它有一些问题。 So what I am doing is something like this: 所以我正在做的是这样的:

<div id="box" style="display:none"></div>
<script type="text/javascript">
document.getElementById("box").style.visibility = "visible";
</script>

But the javascript part does not show the div. 但是javascript部分未显示div。 How can I make it visible is javascript is enabled. 启用javascript后,如何使其可见。 Also tried $('#box').show(); 还尝试了$('#box').show(); but that too didn't work. 但这也不起作用。

使用style.display

document.getElementById("box").style.display = "block";

You need to set the attribute display to block 您需要将属性display设置为“ block

document.getElementById("box").style.display = "block";

You are trying to toggle between visibility, which is similar, but a different property. 您试图在可见性之间切换,这是相似的,但是属性不同。

You are using display: none, not visibility: hidden. 您正在使用显示:无,不是可见性:隐藏。 Solution add visibility: hidden instead of display none if you want to use that instead of display. 解决方案增加了可见性:如果要使用它而不是显示,则不显示而不显示。 They work a little different. 他们的工作有些不同。

You can set: 您可以设置:

<div id='box' style='display: none;'>...</div>

And in your script code: 在您的脚本代码中:

document.getElementById('box').style.display = 'block';

change display to visibility 将显示更改为可见性

<div id="box" style="visibility:none"></div>
<script type="text/javascript">
document.getElementById("box").style.visibility = "visible";
</script>

or change js 或更改js

<div id="box" style="display:none"></div>
    <script type="text/javascript">
         document.getElementById("box").style.display = "block";
    </script>

You could also use a mix of CSS and Javascript to accomplish this: 您还可以混合使用CSS和Javascript来完成此操作:

HTML/Javascript HTML / Javascript

<script type="text/javascript">
    document.documentElement.className += 'js-ready';
</script>

CSS 的CSS

div#box { display: none; }
.js-ready div#box { display: block !important; }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM