OVH Cloud OVH Cloud

Problèmes avec des blocs div...

17 réponses
Avatar
Damien
Bonjour à tous,
voilà j'ai un petit problème avec le code suivant :
http://www.editeurjavascript.com/scripts/scripts_navigation_3_182.php
en effet, j'ai mis un tableau dans un des blocs mais celui-ci apparait
totalement vide sous internet explorer (sous firefox ça marche impec)...

D'avance merci pour votre aide

<div class="cachediv" name="mondiv1" id="mondiv1">
<div class="Style9" style="border: 1px solid black;
background-color: whitesmoke; margin-bottom: 2px;">
<p><br>
&nbsp;&nbsp;<img src="Images/blabla.jpg" width="145"
height="198" border="1"></p>

<table width="402" height="106" border="0" cellpadding="0"
cellspacing="0">
<tr>
<td>blablablablablablablablablabla</td>
<td>blablablablablablablablablabla</td>
</tr>
</table>
</div>
</div>



Damien

7 réponses

1 2
Avatar
ASM
Thibaut Allender wrote:

ajouter
Pdiv.display = (Pdiv.className == 'cachediv')? 'block' : 'none';}


euh non, il ne faut justement pas mettre en display; block une table, un
tr ou un td...


'Pdiv' normalement est le div contenant le tableau ...
... çà devrait donc être bon (à mon idée)


--
Stephane Moriaux et son [moins] vieux Mac


Avatar
Thibaut Allender
Pdiv.display = (Pdiv.display == 'none')? '' : 'none';


Ok donc je le met à la place de ça : Pdiv.className = ( Pdiv.className ==
'cachediv' ) ? '' : 'cachediv';


oui

<td style="display:none;" id="...">


mais ça je le met où ?
Ho lalalalala, c'est vraiment compliqué... :(


tous les elements qui sont masquables/affichables devraient avoir cet
attribut :
style="display:none;"

attention, ça veut dire que par défaut il seront cachés, il faut donc
les afficher au chargement de la page avec la fonction JS ad hoc

PS : pourrais-tu lire http://www.giromini.org/usenet-fr/repondre.html
pour faciliter les echanges ? merci


Ha ok, désolé, c'est mieux là ? ;)


perfecto

ceci dit, le script que tu as récupéré me semble bien compliqué,
peut-être que si tu résumes exactement ce que tu veux pouvoir faire, il
serait plus simple pour nous de vite en réécrire un "from scratch"

--
thibaut allender | freelance | http://capsule.org


Avatar
ASM
Damien wrote:
Ca marche aussi mais impossible de refermer les blocs une fois ouvert...


je ne me souviens plus comment on ferme,
à voir le reste de fonction qui traîne ce doit être en activant la
même chose
- un coup là
- un coup parti

Assure toi que les divs à masquer n'ont pas la classe : 'cachediv'
à l'ouverture de la page

Assure-toi que c'est le même truc exactement qui ouvre/ferme le même div
^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^

"Thibaut Allender"
a écrit dans
le message de news:


puis dans fonction DivStatus
<couic>



Pdiv.display = (Pdiv.className == 'cachediv')? '' : 'none';





--
Stephane Moriaux et son [moins] vieux Mac



Avatar
Damien
C'est bon ça marche !
J'ai juste enlever le ; dans le css

.cachediv {
display: none
}

Et depuis ça marche imapec !

MERCI ENORMEMENT A VOUS DEUX !!!!!!!!!!!

Damien
Avatar
Thibaut Allender
euh non, il ne faut justement pas mettre en display; block une table, un
tr ou un td...


'Pdiv' normalement est le div contenant le tableau ...
... çà devrait donc être bon (à mon idée)


à la mienne aussi, dans ce cas, je n'avais pas tout suivi
ceci dit, utiliser '' au lieu de 'block' ne fait pas de mal, ca permet
de réafficher un élement quel que soit son type

--
thibaut allender | freelance | http://capsule.org


Avatar
ASM
Thibaut Allender wrote:
moi je jouerais seulement sur le display: none/rien plutot que sur un
changement de classe,


c'etait histoire de se servir du pré-existant ...
comme le changement de classe devait être assuré
idée de se servir de cette classe pour se mettre en phase

il doit y avoir un conflit qq part, donc ca
donnerait qq chose avec uniquement ceci :

Pdiv.display = (Pdiv.display == 'none')? '' : 'none';

il faut aussi les definir en display: none au depart, afin de justement
pouvoir jouer sur le display
si l'element n'en a pas (ou uniquement dans la classe)


ce serait aussi bien que tu récupères la fonction de base
qui me paraît bien tarabiscotée et la modifier en prè-mâché
avec ttes ces modifs successive plus rien ne va fonctionner :-/

PS : pourrais-tu lire http://www.giromini.org/usenet-fr/repondre.html
pour faciliter les echanges ? merci


nous sommes nien d'accord


--
Stephane Moriaux et son [moins] vieux Mac

Avatar
ASM
Damien wrote:

moi je jouerais seulement sur le display: none/rien plutot que sur un
changement de classe, il doit y avoir un conflit qq part, donc ca
donnerait qq chose avec uniquement ceci :

Pdiv.display = (Pdiv.display == 'none')? '' : 'none';



Qu'est-ce que je disais ... ? on est perdus

Ok donc je le met à la place de ça : Pdiv.className = ( Pdiv.className ==
'cachediv' ) ? '' : 'cachediv';


oui
et supprimer l'autre ligne rajoutée si elle y est toujours


il faut aussi les definir en display: none au depart, afin de justement
pouvoir jouer sur le display
si l'element n'en a pas (ou uniquement dans la classe)

donc :

<td style="display:none;" id="...">



mais ça je le met où ?
Ho lalalalala, c'est vraiment compliqué... :(


ben dans le code html ...
tu as des balises <td> dans ton table
il faut les modifier comme indiqué

Ce serait pas plus simple de ne s'occuper que du table en entier ?

<table style="display:none;" id="...">

Mais tu peux aussi t"en passer si tu veux que les tables soient
affichées à l'ouverture
sinon tu mets des petites instruction dans le code JS
pour fermer tout ce que tu veux de fermé


PS : pourrais-tu lire http://www.giromini.org/usenet-fr/repondre.html
pour faciliter les echanges ? merci



Ha ok, désolé, c'est mieux là ? ;)


Oh ! oui !
merci


--
Stephane Moriaux et son [moins] vieux Mac


1 2