Problème d'accès à la propriété display d'un div
Publié : 26 juil. 2006, 11:15
bonjour,
j'ai rencontré un petit problème en développant une page web. (enfin en reprenant le dév d'une vieille page bugguée donc faites pas trop attention à l'usage du tableau ^^)
voilà le code d'un calque, qui n'est pas affiché par défaut, et que l'on fait apparaitre uniquement en cliquant sur un bouton (voir code plus bas)
Avec ce code, tout va bien. Ca marche impec'. Dans ma grande refonte, je me sus dit "Hé ! Que fout ce "display:none" là ? je vais le mettre dans ma feuille de style CSS ! (en fait une balise style incorporé au head de la page) donc, je rajoute dans mes styles un truc du genre :
et là le truc bizzarre, c'est qu'avec cette modif, la première fois qu'on clique sur le bouton pour rendre visible le div imgblock, ben il se passe rien. Pourquoi ? Parce que la propriété display est "" (vide quoi, non définie). Quand je fais un "alert(document.getElementById('imgblock').style.display)" ça me dit "". Une fois avoir cliqué sur le bouton, on retrouve bien "none" et "block" mais au tout premier coup c'est "". alors que si je définis le "display: none" directement dans la propriété style de la balise div, là ça marche dès le premier coup..
bizzarre non ?
Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.0.4) Gecko/20060508 Firefox/1.5.0.4
j'ai rencontré un petit problème en développant une page web. (enfin en reprenant le dév d'une vieille page bugguée donc faites pas trop attention à l'usage du tableau ^^)
voilà le code d'un calque, qui n'est pas affiché par défaut, et que l'on fait apparaitre uniquement en cliquant sur un bouton (voir code plus bas)
Code : Tout sélectionner
<div id="imgblock" style="display: none;" align="center">
<table width="400px">
<tr>
<td colspan="3">Attention ! L'image que vous souhaitez insérer doit déjà être uploadé sur un espace web ! Vous ne pouvez pas lier une image qui se trouve sur votre disque dur avec un chemin du type <i>c:\mes images\monimage.jpg</i>. Ca ne marchera pas ! L'url doit être du type <i>http://www.monsite.com/monimages.jpg</i>. En cas de soucis, n'hésitez pas à contacter l'<a href="mailto:">admin</a></td>
</tr>
<tr>
<td>Url : </td>
<td><input type="text" id="urlimg" name="urlimg" size="50"></td>
<td><input type="button" onClick="insertImg()" value="Ajouter"></td>
</tr>
</table>
</div>
Code : Tout sélectionner
<input type="button" class="button" name="addbbcode14" value="Img" style="width: 40px" onClick="document.getElementById('imgblock').style.display=(document.getElementById('imgblock').style.display=='none'?'block':'none');" /
Code : Tout sélectionner
#imgblock { display:none; }
bizzarre non ?
Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.0.4) Gecko/20060508 Firefox/1.5.0.4