Je veux masquer un div si javascript est désactivé et montrer que div si javascript est activé mais je ne veux pas utiliser <noscript> comme dans Chrome et l'opéra, il a quelques problèmes. Donc ce que je fais est quelque chose comme ça:

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

Mais la partie javascript ne montre pas le div. Comment puis-je le rendre visible si javascript est activé. A également essayé $('#box').show(); mais cela n'a pas fonctionné non plus.

1
bɪˈɡɪnə 5 mars 2016 à 18:24

6 réponses

Meilleure réponse

Utilisez style.display

document.getElementById("box").style.display = "block";
7
baao 5 mars 2016 à 15:27

Vous pouvez également utiliser un mélange de CSS et de Javascript pour accomplir ceci:

HTML / Javascript

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

CSS

div#box { display: none; }
.js-ready div#box { display: block !important; }
1
ub3rst4r 5 mars 2016 à 15:32

Changer l'affichage en visibilité

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

Ou changer js

<div id="box" style="display:none"></div>
    <script type="text/javascript">
         document.getElementById("box").style.display = "block";
    </script>
1
Çağrı 5 mars 2016 à 15:28

Vous devez définir l'attribut display sur block

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

Vous essayez de basculer entre la visibilité, qui est similaire, mais une propriété différente.

3
speak 5 mars 2016 à 15:27

Vous utilisez l'affichage: aucun, pas la visibilité: caché. Solution ajouter de la visibilité: caché au lieu d'afficher aucun si vous souhaitez l'utiliser au lieu de l'affichage. Ils fonctionnent un peu différemment.

1
PVL 5 mars 2016 à 15:27

Vous pouvez définir:

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

Et dans votre code de script:

document.getElementById('box').style.display = 'block';
1
ConnorsFan 5 mars 2016 à 15:28