Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2905 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Pk ça boucle pas :'(

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Pk ça boucle pas :'(

n°1303697
Dorian BAC​+4
Posté le 12-02-2006 à 13:08:54  profilanswer
 

voila le script,
 
et le résultat : "2"
 
oui mais moi c 1 puis 2 puis 3 que je voudrais voir affiché en boucle
 
 

Code :
  1. <SCRIPT type="text/javascript">
  2. function montre(object)
  3.   {
  4.   if (document.layers && document.layers[object])
  5.     {
  6.     document.layers[object].visibility = 'visible';
  7.     }
  8.   else if (document.all)
  9.     {
  10.     document.all[object].style.visibility = 'visible';
  11.     }
  12.   else if (document.getElementById)
  13.     {
  14.     document.getElementById(object).style.visibility = 'visible';
  15.     }
  16.   }
  17. function cache(object)
  18.   {
  19.   if (document.layers && document.layers[object])
  20.     {
  21.     document.layers[object].visibility = 'hidden';
  22.     }
  23.   else if (document.all)
  24.     {
  25.     document.all[object].style.visibility = 'hidden';
  26.     }
  27.   else if (document.getElementById)
  28.     {
  29.     document.getElementById(object).style.visibility = 'hidden';
  30.     }
  31.   }
  32. i=1;
  33. function changeMessage()
  34. {
  35. if (i==1)
  36. {
  37.   montre('txtNom');
  38.   cache('txtPrenom');
  39.   cache('txtAge');
  40. }
  41. else
  42. {
  43.   if (i==2)
  44.   {
  45.    cache('txtNom');
  46.    montre('txtPrenom');
  47.    cache('txtAge');
  48.   }
  49.   else
  50.   {
  51.    if (i==3)
  52.    {
  53.     cache('txtNom');
  54.     cache('txtPrenom');
  55.     montre('txtAge');
  56.    }
  57.   }
  58. }
  59. }
  60. i=i+1;
  61. if (i==4)
  62. {
  63. i=1;
  64. }
  65. setInterval("changeMessage()",1000);
  66. </SCRIPT>
  67. <div id=VIP>
  68.   <table id="txtNom" style="visibility:hidden;">
  69.   <tr>
  70.   <td>1</td>
  71.   </tr>
  72.   </table>
  73.   <table id="txtPrenom" style="visibility:hidden;">
  74.   <tr>
  75.   <td>2</td>
  76.   </tr>
  77.   </table>
  78.   <table id="txtAge" style="visibility:hidden;">
  79.   <tr>
  80.   <td>3</td>
  81.   </tr>
  82.   </table>
  83. </div>


Message édité par Dorian BAC+4 le 12-02-2006 à 15:39:26
mood
Publicité
Posté le 12-02-2006 à 13:08:54  profilanswer
 

n°1303704
Ayuget
R.oger
Posté le 12-02-2006 à 13:38:15  profilanswer
 

La flemme de chercher, mais qu'est-ce que le javascript est mal codé.
 
tes if enchainés sont particulièrement horribles.

n°1303715
KangOl
Profil : pointeur
Posté le 12-02-2006 à 14:21:27  profilanswer
 

et la balise [code] ??

n°1303817
Dorian BAC​+4
Posté le 12-02-2006 à 18:24:20  profilanswer
 

up non?

n°1303818
gatsu35
Blablaté par Harko
Posté le 12-02-2006 à 18:25:46  profilanswer
 

Ton truc est khakha
 
 
ca c'est pas caca

Code :
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3. <head>
  4. <title></title>
  5. <script type="text/javascript">
  6. var txtBlock = new Array("txtPrenom","txtNom","txtAge" );
  7. var txtIndex=0;
  8. function changeMessage(){
  9.  for(j=0; j<=txtBlock.length-1; j++){
  10.   if (document.getElementById(txtBlock[j])) {
  11.    document.getElementById(txtBlock[j]).style.display = (j==txtIndex) ?  "block" : "none";
  12.   }
  13.  }
  14.  (txtIndex<txtBlock.length-1) ? txtIndex++ : txtIndex=0;
  15. }
  16. window.onload = function() {
  17.  var timer = setInterval("changeMessage()",500);
  18. }
  19. </script>
  20. <style>
  21. #txtPrenom, #txtNom, #txtAge {
  22.  display:none;
  23. }
  24. </style>
  25. </head>
  26. <body>
  27. <div id="txtPrenom">1</div>
  28. <div id="txtNom">2</div>
  29. <div id="txtAge">3</div>
  30. </body>
  31. </html>


 
Il y a trop d'erreurs dans ton code, ton problème à toi est simple et il se situe au fait que ta condition
if(i==4)....
n'est pas incluse dans la fonction changemessage, du coup c'est normal que ce ne marche pas et que ca t'affiche 2 ;)
 
et puis tu as utilisé plein de vieux code dépassé,
tes fonctions cache et montre devaient se simplifier à : document.getElementById("iddelobjet" ).style.display.
 
ensuite il y a 2 choses à savoir :  
la propriété visibility:hidden cache l'objet mais laisse l'espace qu'il prend dans la page
la propriété display:none cache l'objet et l'enlève entièrement de la page
 
Et ton vieux paté de If imbriqués tu aurais largement pu l'éviter quand même.


Message édité par gatsu35 le 12-02-2006 à 18:55:24
n°1303884
Dorian BAC​+4
Posté le 12-02-2006 à 20:48:48  profilanswer
 

lol ok merci pour ton edit :) c cool de m'avoir expliké pour le if i ==4
j'ai testé ton script ça marche nikel
 
merci bcq gars

n°1303891
gatsu35
Blablaté par Harko
Posté le 12-02-2006 à 21:28:04  profilanswer
 

Je tiens juste à te mettre en garde et ça je le vois souvent :  
Tu fais des études pour être ingénieur (cf poste cat emploi), actuellement tu es BAC+4 (enfin niveau BAC+4) (cf pseudo)
 
quand je vois un code comme tu viens de me pondre, je me dis que tu ne sais pas programmer, et ça tu n'es pas le seul, dans mon ancienne formation sur 28 personnes, il y en avait 14 qui codaient comme les pieds et qui auraient pondu un code aussi crade que le tiens pour faire le peu que je viens de faire....
 
PS: Moi je viens de finir mes études et j'ai un BAC+4


Message édité par gatsu35 le 12-02-2006 à 21:28:21

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Pk ça boucle pas :'(

 

Sujets relatifs
Boucle Simultané ?Sous programme dans une boucle --> paramètre?????
Noms de variables et dossier dans une bouclep----n de boucle for
BoucleBoucle avec chaine vide : je comprends pas
[AS] Créer des LoadVars en bouclemenu avec boucle
[VBA] convertir texte en num dans une boucleboucle - arret utilisateur
Plus de sujets relatifs à : Pk ça boucle pas :'(


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR