OVH Cloud OVH Cloud

Cadre depliant

3 réponses
Avatar
Delf
Bonjour.

Je n'ai jamais fait de javascript et pourtant je vais en avoir besoin.
Je vais essayer de vous expliquer ce que je voudrais faire, je sais pas
comment ca s'appelle:

J'ai une suite de cadre de hauteur 7 (7 lignes).
Exemple:

ID
<espace>
Champ1
<espace>
Champ2
<espace>
Champ3

Je peux avoir environ 70 cadres les uns en dessous des autres. Pour que
la page web soit pas trop longue, je voudrais créer des cadres de
hauteur 1 contenant uniquement l'ID. Et si on clique sur ce cadre, alors
il se déplie et fait apparaitre les 6 autres lignes. En empéchant si
possible que les cadres se chevauchent.

Comment faire ? Des sites ?
Merci d'avance.

--
Delf

3 réponses

Avatar
ASM

Bonjour.

Je n'ai jamais fait de javascript et pourtant je vais en avoir besoin.
Je vais essayer de vous expliquer ce que je voudrais faire, je sais pas
comment ca s'appelle:

Je peux avoir environ 70 cadres les uns en dessous des autres. Pour que
la page web soit pas trop longue, je voudrais créer des cadres de
hauteur 1 contenant uniquement l'ID. Et si on clique sur ce cadre, alors
il se déplie et fait apparaitre les 6 autres lignes. En empéchant si
possible que les cadres se chevauchent.


<script type="text/javascript">
function deplier(id) {
var num = id.substring(6,7);
if(num>10) document.getElementById('para_'+num-1).style.display='none';
document.getElementById('para_'+num).style.display='block';
}
</script>
<style type="text/css">
.para { display: none; }
</style>

nommer les divs (noms finissent par un nombre dont le plus petit est 10)

<div id='cadre_10'>
<a href="#" onclick="deplier(this.id);return false;" title="cliquez-moi">
Premier paragraphe</a>
<div id="para_10" class="para">
<p>Champ 1
<p>Champ 2
... / ... <p>Champ 7
</div>
</div>
<div id='cadre_11'>
<a ... etc ... etc

Comment faire ? Des sites ?


questionner google à propos de cloneNodes et de childNodes

car on doit pouvoir aussi faire :
function deplier(id) {
document.getElementById(id).firstChild.style.display='block'; }


--
*******************************************************
Stéphane MORIAUX et son vieux Mac
Aide Pages Perso (images & couleurs, formulaire, CHP)
http://perso.wanadoo.fr/stephane.moriaux/internet/
*******************************************************

Avatar
ASM


Bonjour.

Je n'ai jamais fait de javascript et pourtant je vais en avoir besoin.



tu auras pu te rendre compte que ce que j'ai donné précedemment
ne marchait pas ...
Le javascript ce n'est pas si facile ...

voici qque chose qui fonctionne (testé)

<html>
<script type="text/javascript">
function montre(calque) {
document.getElementById(calque).style.display='block';
}
function cache() {
// construction d'1 tableau regroupant tous les calques
var C = document.getElementsByTagName('div');
// passer sur tous les elements du tableau
for(var i=0;i<C.length;i++)
if(C[i].className=='para') C[i].style.display='none';
// si la classe du calque est "para" alors ne pas l'afficher
}

function deplier(ceCalque) {
// on recupere le nombre en fin de nom
var num = ceCalque.substring(6,8);
cache();
montre('para_'+num);
}
</script>
<style type="text/css">
.para { display: none; border:1px solid blue; width:80%;margin-left:15%;}
</style>

nommer les divs (les noms finissent par un nombre dont le plus petit est 10)

<p><a id='cadre_10' href="#" onclick="deplier(this.id);return false;" title="cliquez-moi">
Premier paragraphe</a>
<div id="para_10" class="para">
<p>Champ 1
<p>Champ 2
<p>Champ 3
<p>Champ 4
<p>Champ 5
<p>Champ 6
<p>Champ 7
</div>

<p><a id='cadre_11' href="#" onclick="deplier(this.id);return false;" title="cliquez-moi">
deuxième paragraphe</a>
<div id="para_11" class="para">
<p>Champ 1
<p>Champ 2
<p>Champ 3
<p>Champ 4
<p>Champ 5
<p>Champ 6
<p>Champ 7
</div>

<p><a id='cadre_12' href="#" onclick="deplier(this.id);return false;" title="cliquez-moi">
troisième paragraphe</a>
<div id="para_12" class="para">
<p>Champ 1
<p>Champ 2
<p>Champ 3
<p>Champ 4
<p>Champ 5
<p>Champ 6
<p>Champ 7
</div>
</html>


--
*******************************************************
Stéphane MORIAUX et son vieux Mac
Aide Pages Perso (images & couleurs, formulaire, CHP)
http://perso.wanadoo.fr/stephane.moriaux/internet/
*******************************************************


Avatar
Delf
ASM wrote:


Bonjour.

Je n'ai jamais fait de javascript et pourtant je vais en avoir besoin.




tu auras pu te rendre compte que ce que j'ai donné précedemment
ne marchait pas ...
Le javascript ce n'est pas si facile ...


Je viens de lire le forum, j'ai pas encore pu tester quoique ce soit.

voici qque chose qui fonctionne (testé)
[...]


Ok merci pour ton aide, je vais voir ca.

--
Delf