Comment mettre plusieurs tableaux distincts sur une même page

viking07 Messages postés 6 Date d'inscription mardi 15 avril 2008 Statut Membre Dernière intervention 9 juin 2008 - 15 avril 2008 à 20:48
viking07 Messages postés 6 Date d'inscription mardi 15 avril 2008 Statut Membre Dernière intervention 9 juin 2008 - 9 juin 2008 à 22:36
Bonjour,

J'ai un petit soucis. Je souhaiterais mettre plusieurs tableaux avec des variables sur une même page.
En fait, un tableau différent en dessous de chaque titre lien . Pour un seul tableau, ça fonctionne, mais dès que je mets un second, toutes les variables se mélangent.

Je n'y connais absolument rien en javascript et ne sais vraiment pas ce qu'il faut changer pour que ça fonctionne.

Voici le code que j'ai utilsé

<html>
<head>
 <title>Titre</title>
 <script type="text/javascript">
 function affTexte(nb){
  var infos = new Array("Texte d'info pour le texte 1", "Texte d'info pour le texte 2", "Texte d'info pour le texte 3");
  var i = (nb>0 && nb<=infos.length)? nb-1: 1;
  
  var info = document.getElementById("info");
  info.innerHTML = infos[i];
 }
 function cacheTexte()
  { document.getElementById("info").innerHTML = "Texte qui va changer"; }
 </script>
</head>
 

 
  ----

       
     <li onmouseover="affTexte(1);" onmouseout="cacheTexte();">texte 1</li>
     <li onmouseover="affTexte(2);" onmouseout="cacheTexte();">texte 2</li>
     <li onmouseover="affTexte(3);" onmouseout="cacheTexte();">texte 3</li>
    
   ,
   Texte qui va changer,
  
 

 
 

</html>

Merci de votre aide

8 réponses

PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 16
17 avril 2008 à 18:03
Bonjour,
<table bgcolor="#e6effe" border="0" cellpadding="5" cellspacing="0" width="100%">----, ...ça fonctionne, mais dès que je mets un
second...</td>
</td></tr></tbody></table>- ou
est-il ?
- que veux tu en faire ?
- est ce un tableaux multi dimensions
dont tu as besoin ?
- etc...
Il nous faut plus d'infos...
;O)
0
viking07 Messages postés 6 Date d'inscription mardi 15 avril 2008 Statut Membre Dernière intervention 9 juin 2008
17 avril 2008 à 18:17
En fait, j'ai enlevé le second, car quand je passe sur les mots du second, les explications changent dans le premier et tout se mélange.

En fait, j'aimerais mettre un tableau comme le premier en-dessous de chaque titre, mais avec des explications différentes. Il y aurait donc 6 titres avec 6 tableaux sur la même page.


Mon soucis vient du fait que toutes les données se mélangent et je ne sais pas comment faire pour qu'ils soient tous indépendants les uns des autres.


J'ai mis le lien de la page pour mieux me faire comprendre. Je sais, suis pas très douée ( http://viking07.fr.gd )

Un tout tout gros merci
0
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 16
17 avril 2008 à 19:02
Je pense mieux cerner ton soucis, donc comme toujours
plusieurs solutions

en first déclares tes tableaux en global, hors des
fonctions, exemple
var
Txt_menu1 = new Array( "Menu1 Ligne1", "Menu1 Ligne2", "Menu1 Ligne3", "Menu1
Ligne4");
var Txt_menu2 = new Array( "Menu2 Ligne1", "Menu2 Ligne2", "Menu2
Ligne3", "Menu2 Ligne4");
var Txt_menu3 = new Array( "Menu3 Ligne1", "Menu3
Ligne2", "Menu3 Ligne3", "Menu3 Ligne4");

ensuite il te faut
passer le tableau qui t'intéresse à la fonction
onmouseover = "affTexte( Txt_menu1, 1);" // par exemple ne pas mettre de quote a Txt_menu1, c'est une variable

la fonction devient
dans ce cas
function affTexte(
txt_ , num_){
  var i = ( num_>0 && num_ <= txt_.length) ?
num_-1: 1;
  var info = document.getElementById("info");

  info.innerHTML = txt_[i];
}
voila pour une méthode avec plusieurs tableaux....
;O)
0
viking07 Messages postés 6 Date d'inscription mardi 15 avril 2008 Statut Membre Dernière intervention 9 juin 2008
17 avril 2008 à 19:13
Merci, je vais essayer. Je pense avoir compris, mais suis pas certaine. Comme j'ai dit, pas très douée la fille.

Aujourd'hui, pas trop le temps, mais certainement ce WE.

Bon, je positivise, ça va aller

Encore un énorme merci

Si j'ai un soucis, je repasse

Bonne soirée.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
viking07 Messages postés 6 Date d'inscription mardi 15 avril 2008 Statut Membre Dernière intervention 9 juin 2008
7 juin 2008 à 20:47
Bonsoir,


Désolée de repasser si tardivement, mais j'ai eu beaucoup de soucis perso.


Ben voilà, j'ai essayé et réessayé. Certaines personnes ont tenté de m'aider aussi, et on n'y arrive pas


Sait-il possible de me donner un exemple qui fonctionne, comme ça je pourrais voir où je me trompe.

Encore désolée de vous déranger avec mes petits soucis.

Merciiiiiiiiiiiiiiiiiii 

Bonne soirée.
0
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 16
9 juin 2008 à 17:11
Bien le bonjour...
au vu de ce que je t'ai
écris ci dessus et de ton code de départ cela peut donner un truc du sytle de...

<html>
<head>

<title>Titre</title>
<script type= "text/javascript">

//-- Declaration des infos
var Txt_1 =
new Array( "Menu1 Ligne1", "Menu1 Ligne2", "Menu1 Ligne3", "Menu1 Ligne4");

var Txt_2 = new Array( "Menu2 Ligne1", "Menu2 Ligne2", "Menu2 Ligne3",
"Menu2 Ligne4");
var Txt_3 = new Array( "Menu3 Ligne1", "Menu3 Ligne2",
"Menu3 Ligne3", "Menu3 Ligne4");

function cacheTexte( obj_){

  document.getElementById( obj_).innerHTML = " ";
}
//--------------------------------------
// where_ : l'endroit ou l'on veut que le texte apparaisse

// txt_ : le tableau qui nous interresse

// num_ : l'indice du tableau que l'on
veut afficher
//--------------------------------------

function Aff_Texte( where_, txt_ , num_){
  var i = (
num_>0 && num_ <= txt_.length) ? num_-1: 1;
  var info =
document.getElementById( where_);
  info.innerHTML = txt_[i];
}

</script>
</head>

  
    ----

              
          <li onmouseover ="Aff_Texte( 'info_1',
Txt_1, 1);" onmouseout ="cacheTexte('info_1');">texte 1</li>

          <li onmouseover ="Aff_Texte( 'info_1', Txt_1, 2);" onmouseout
="cacheTexte('info_1');">texte 2</li>
          <li onmouseover
"Aff_Texte( 'info_1', Txt_1, 3);" onmouseout "cacheTexte('info_1');">texte
3</li>
        
      ,
      Info pour menu #1,

    
    ----

              
          <li onmouseover ="Aff_Texte( 'info_2',
Txt_2, 1);" onmouseout ="cacheTexte('info_2');">texte 1</li>

          <li onmouseover ="Aff_Texte( 'info_2', Txt_2, 2);" onmouseout
="cacheTexte('info_2');">texte 2</li>
          <li onmouseover
"Aff_Texte( 'info_2', Txt_2, 3);" onmouseout "cacheTexte('info_2');">texte
3</li>
        
      ,
      Info pour menu #2,

    
  



</html>
Voila, rien de bien compliqué, à toi d'adapter...

Bonne reprise...
;O)
0
viking07 Messages postés 6 Date d'inscription mardi 15 avril 2008 Statut Membre Dernière intervention 9 juin 2008
9 juin 2008 à 17:19
Un tout gros merci, j'essaie ça demain

Bonne soirée .
0
viking07 Messages postés 6 Date d'inscription mardi 15 avril 2008 Statut Membre Dernière intervention 9 juin 2008
9 juin 2008 à 22:36
Voila, je viens de faire. C'est déjà beaucoup mieux

Mais j'ai un soucis avec la fonction cache Texte.

Le texte change bien, mais ne revient pas au texte d'origine pffffffff suis vraiment pas douée, j'ai essayé plein de trucs et ça ne fonctionne pas.

Et pour les deux premiers tableaux, la bordure disparait après le passage du curseur sur le menu. Je ne comprends pas pourquoi.

Revoici le lien de ma page pour mieux me faire comprendre http://viking07.fr.gd

Encore merci d'être aussi patient avec moi
0
Rejoignez-nous