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

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [HTML/JS] application du setTimeOut pour un effet "machine à ecrire"

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[HTML/JS] application du setTimeOut pour un effet "machine à ecrire"

n°2004746
Ch'DUP
Posté le 25-06-2010 à 12:07:49  profilanswer
 

bonjour à tous !
 
j'essaie d'installer un effet de "frappe machine à ecrire" sur la page presentation/identité de mon portfolio
www.laurent-marty.fr
 
voici mon HTML

Citation :

                       <div class="colonne_droite">
                            <form name="form_identite">
                                <textarea rows="10" cols="0" name="entrees" class="entrees">
                                </textarea>
                            </form>
                        </div>


 
et mon JS actuel

Citation :

function machine(){
     
  var tableau = ["MARTY", "Laurent", "plug-in", "j'ai connu le minitel, h&eacute oui !",".fr","#ff8bb1","51600px &agrave 300dPi","float:left"];
  var elemIdx = 0;
  var caractere = 0;
   
  for (elemIdx; elemIdx<tableau.length; elemIdx++) {
   caractere=0;
   document.form_identite.entrees.value += "\n\r";
   for (caractere; caractere<tableau[elemIdx].length; caractere++) {
    document.form_identite.entrees.value += tableau[elemIdx].substr(caractere,1);
   };
  };
 };


 
ce code fonctionne et m'affiche bien les elements du tableau.
mais je voudrai mettre un délai d'affichage entre chaque lettre.
j'ai donc essayé ceci :

Citation :

for (caractere; caractere<tableau[elemIdx].length; caractere++) {
    setTimeout("frappe(elemIdx,caractere)",500);
    function frappe(ele,car){
     document.form_identite.entrees.value += tableau[ele].substr(car,1);
    };
   };


 
et j'ai une erreur "frappe is not defined"  :(  
 
comment dois-je m'y prendre pour faire fonctionner ce setTimeOut ?
merci


Message édité par Ch'DUP le 25-06-2010 à 15:10:44
mood
Publicité
Posté le 25-06-2010 à 12:07:49  profilanswer
 

n°2004802
olivthill
Posté le 25-06-2010 à 14:40:36  profilanswer
 

Pour résoudre le problème, essayer de mettre la définition de la fonction frappe avant son appel, et en dehors de la boucle :

   function frappe(ele,car){  
     document.form_identite.entrees.value += tableau[ele].substr(car,1);  
    };  
...
for (caractere; caractere<tableau[elemIdx].length; caractere++) {  
    setTimeout("frappe(elemIdx,caractere)",500);  
   };


Mais il y aura d'autres problèmes. Il faudrait revoir ça.


Message édité par olivthill le 25-06-2010 à 14:41:41
n°2004806
Ch'DUP
Posté le 25-06-2010 à 15:00:02  profilanswer
 

merci de ta réponse.
 
j'avais essayer de sortir la fonction , mais pas en la mettant avant son appel.
mais toujours la meme erreur de "frappe is not defined".
 
par contre, j'ai remarqué que si j'enleve les guillements : setTimeout(frappe(elemIdx,caractere),500);  
 ça tourne en boucle sur le premier caractere et j'ai bien sur une erreur : "useless setTimeout call (missing quotes around argument?)"
mais au moins la fonction est appelée apparemment.
 
edit : bon ben le probleme c'est qu on ne peut pas passer de parametres dans l'appel d'une fonction à l'interieur d'un setTimeOut apparemment.
et si je ne passe pas ses parametres :

Citation :

setTimeout("frappe()",500);  
et
document.form_identite.entrees.value += tableau[elemIdx].substr(caractere,1);  


c'est le tableau[elemIdx] qui devient undefined ... :(


Message édité par Ch'DUP le 25-06-2010 à 15:19:19
n°2004933
Ch'DUP
Posté le 26-06-2010 à 11:30:49  profilanswer
 

désolé de upper, mais je bloque vraiment la

n°2008998
bernae
Posté le 13-07-2010 à 13:09:04  profilanswer
 

J'essai d'utiliser un heure digitalle sur ma page et ma fonction setTimeOut et setInterval ne marche pas SVP aidez moi


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

  [HTML/JS] application du setTimeOut pour un effet "machine à ecrire"

 

Sujets relatifs
Choix de langage pour une application "widget-like"Script Greasemonkey (aka "ça fait lgtps que j'ai plus fait de JS")
Wikitext (wikipedia) to html, récupérer un article de wikipedia[Résolu] Liste de lecture en html
Peut-on mettre du code html dans une base de donnée ?Problème accéder l'élement DOM (parsing html)
[C#/.Net2.0] Application Settings et types (très) complexescomment afficher des googleMaps dont j'ai le html avec menu déroulant
pourquoi le programme html &css change selon le navigateur 
Plus de sujets relatifs à : [HTML/JS] application du setTimeOut pour un effet "machine à ecrire"


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