Afficher un block
Résolu/Fermé
barale61
Messages postés
1211
Date d'inscription
jeudi 13 septembre 2012
Statut
Membre
Dernière intervention
4 février 2025
-
19 août 2015 à 18:01
barale61 Messages postés 1211 Date d'inscription jeudi 13 septembre 2012 Statut Membre Dernière intervention 4 février 2025 - 7 oct. 2015 à 10:48
barale61 Messages postés 1211 Date d'inscription jeudi 13 septembre 2012 Statut Membre Dernière intervention 4 février 2025 - 7 oct. 2015 à 10:48
A voir également:
- Afficher un block
- Block breaker - Accueil - Services en ligne
- Afficher appdata - Guide
- Afficher mot de passe wifi android - Guide
- Website block - Télécharger - Contrôle parental
- U block chrome - Télécharger - Outils pour navigateurs
7 réponses
jordane45
Messages postés
38427
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 février 2025
4 735
19 août 2015 à 22:12
19 août 2015 à 22:12
Bonjour
De mémoire .getElementsByClassName retourne un array... pas un élément unique. ..
De mémoire .getElementsByClassName retourne un array... pas un élément unique. ..
barale61
Messages postés
1211
Date d'inscription
jeudi 13 septembre 2012
Statut
Membre
Dernière intervention
4 février 2025
110
20 août 2015 à 12:28
20 août 2015 à 12:28
J'ai essayé de cette façon:
Mais ça me renvoi la même erreur.
function pieces() { document.getElementById('pieces').style.display = 'block'; }
Mais ça me renvoi la même erreur.
jordane45
Messages postés
38427
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 février 2025
4 735
20 août 2015 à 13:02
20 août 2015 à 13:02
Ceci fonctionne :
Et la version avec l' ID plutôt que la CLASS
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>test</title> <style> .pd { /* Masque le menu pièces détachées */ display: none; } </style> </head> <body> <div class="pd" id="toto">ceci est un test</div> <a onclick="pd();">test</a> </body> </html> <script type="text/javascript"> function pd() { var elem = document.getElementsByClassName('pd'); for(var i=0;i<=elem.length-1;i++){ elem[i].style.display = 'block'; } } </script>
Et la version avec l' ID plutôt que la CLASS
function pd() { var elem = document.getElementById('toto'); elem.style.display = 'block'; }
barale61
Messages postés
1211
Date d'inscription
jeudi 13 septembre 2012
Statut
Membre
Dernière intervention
4 février 2025
110
20 août 2015 à 17:15
20 août 2015 à 17:15
Merci mais j'ai toujours la même erreur qui est apparemment un conflit avec jquery.
jordane45
Messages postés
38427
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 février 2025
4 735
20 août 2015 à 18:07
20 août 2015 à 18:07
Donc... rien à voir avec ce code !!
Si tu as une erreur. .. elle se trouve ailleurs. .. et nous... sans le message. .. impossible de t'aider !!
Si tu as une erreur. .. elle se trouve ailleurs. .. et nous... sans le message. .. impossible de t'aider !!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
barale61
Messages postés
1211
Date d'inscription
jeudi 13 septembre 2012
Statut
Membre
Dernière intervention
4 février 2025
110
1 oct. 2015 à 19:34
1 oct. 2015 à 19:34
Finalement j'ai enlevé jquery pour éviter le conflit et je me demande alors comment je peux faire pour que:
si il est déjà ouvert comme je ne sais pas j'ai essayé bêtement comme ceci:
mais apparemment j'en suis loin.
elem.style.display = 'none';
si il est déjà ouvert comme je ne sais pas j'ai essayé bêtement comme ceci:
if elem.style.display = 'none'; { elem.style.display = 'block'; } else { elem.style.display = 'none'; }
mais apparemment j'en suis loin.
Rhydan1
Messages postés
382
Date d'inscription
jeudi 3 juillet 2014
Statut
Membre
Dernière intervention
2 avril 2017
70
1 oct. 2015 à 21:18
1 oct. 2015 à 21:18
Dans ton IF c'est une comparaison que tu fais, donc tu dois mettre == 'none' et pas un seul = ;)
+1 pour la comparaison (==)au lieu d'une affectation(=).
Mais pourquoi ne pas utiliser JQuery dans ce cas vu qu'il était implémenté?
C'est bien plus simple et rapide à écrire, en tout cas si vous devez cachez/afficher un menu il y a une action utilisateur à la base?
Il y a même des fonctions pour faire bascule en utilisant le même bouton sans avoir à écrire de tests:
http://api.jquery.com/toggle/
Mais pourquoi ne pas utiliser JQuery dans ce cas vu qu'il était implémenté?
C'est bien plus simple et rapide à écrire, en tout cas si vous devez cachez/afficher un menu il y a une action utilisateur à la base?
$(document).ready(function(){ // afficher $('#afficher').click(function(){ $('#pd').show()} ); //masquer $('masquer').cllick(function(){ $('#pd').hide(); } ); });
Il y a même des fonctions pour faire bascule en utilisant le même bouton sans avoir à écrire de tests:
http://api.jquery.com/toggle/
barale61
Messages postés
1211
Date d'inscription
jeudi 13 septembre 2012
Statut
Membre
Dernière intervention
4 février 2025
110
2 oct. 2015 à 12:29
2 oct. 2015 à 12:29
Je fais un tutoriel sur javascript et je souhaite comprendre avant d'utiliser jquery alors je fais:
mais le débogueur me renvoi l'erreur suivante:![](https://img-19.ccm2.net/tBWDGxuBvrQsVIFSYnhTitYvl5s=/d379e49d8c084f6f9472cfa2afaddb0e/ccm-ugc/ODvZH7vEFAttMzLUEhc6aFq-debogueur-s-.png)
function sous_menu() { var elem = document.getElementById('sous_menu'); if (elem.style.display == 'none' || elem.style.display == ''); { elem.style.display = 'block'; } else { elem.style.display = 'none'; } }
mais le débogueur me renvoi l'erreur suivante:
![](https://img-19.ccm2.net/tBWDGxuBvrQsVIFSYnhTitYvl5s=/d379e49d8c084f6f9472cfa2afaddb0e/ccm-ugc/ODvZH7vEFAttMzLUEhc6aFq-debogueur-s-.png)
Rhydan1
Messages postés
382
Date d'inscription
jeudi 3 juillet 2014
Statut
Membre
Dernière intervention
2 avril 2017
70
4 oct. 2015 à 23:35
4 oct. 2015 à 23:35
Je comprend pas ton IF.. Il manque un truc dedans ^^
--
--
Rhydan1
Messages postés
382
Date d'inscription
jeudi 3 juillet 2014
Statut
Membre
Dernière intervention
2 avril 2017
70
>
Rhydan1
Messages postés
382
Date d'inscription
jeudi 3 juillet 2014
Statut
Membre
Dernière intervention
2 avril 2017
4 oct. 2015 à 23:37
4 oct. 2015 à 23:37
Nan j'ai rien dis, essaye de retirer la deuxième condition dans ton IF, et regarde ce que ça donne
--
--
barale61
Messages postés
1211
Date d'inscription
jeudi 13 septembre 2012
Statut
Membre
Dernière intervention
4 février 2025
110
7 oct. 2015 à 10:48
7 oct. 2015 à 10:48
Merci pour vos réponses, finalement j'ai fait:
function sous_menu() { var sous_menu = document.getElementById('sous_menu'); var btn_plus = document.getElementById('btn_plus'); var btn_moins = document.getElementById('btn_moins'); var child = document.getElementById('child'); if (sous_menu.style.display == 'none' || sous_menu.style.display == '') { sous_menu.style.display = 'block'; btn_plus.style.display = 'none'; btn_moins.style.display = 'block'; child.style.height = '146px'; } else { sous_menu.style.display = 'none'; btn_plus.style.display = 'block'; btn_moins.style.display = 'none'; child.style.height = '20px'; } }