IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Affichage des résultats avec intervalle de temps


Sujet :

JavaScript

  1. #1
    Futur Membre du Club
    Homme Profil pro
    genie logiciel
    Inscrit en
    Mai 2015
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : genie logiciel

    Informations forums :
    Inscription : Mai 2015
    Messages : 12
    Points : 7
    Points
    7
    Par défaut Affichage des résultats avec intervalle de temps
    Bonjour, je veux faire un calcul successif représenter par le code suivant :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    <!DOCTYPE html>
    <html>
      <head>
        <meta charset="utf-8">
        <style type="text/css">
          #container{ background-color: lightgreen; text-align: center ;width: 350px; border:solid 1px black; min-height: 15px}
          #resultat{ background-color: #80BFFF; width: 350px; border:solid 1px black; min-height: 150px}
        </style>
        <script>
          p = new Array();
          function calculer() {
            var affiche=document.getElementById("resultat");
            x=1*document.getElementById("nb_a").value;
            y=1*document.getElementById("nb_b").value;
            p[0]=x;
            p[1]=p[0]*y;
            affiche.innerHTML +="<br/>p["+ 1 +"]=a*b = "+ p[1] +"<br/>";
            
            for (var i = 2; i < 10; i++) {
            k=i-1;
            p[i]=p[k]*y;
            affiche.innerHTML +="p["+ i +"]=p["+ k +"]*b = "+ p[i] +"<br/>";
            }
            
          }
        </script>
      </head>
      <body>
        <p>a = <input id="nb_a"></p>
        <p>b = <input id="nb_b"></p>
     
        <input type="button" value="CALCULER" onclick="calculer();"><br/>
     
        <div id="container" >Voici quelques resultats des calculs :</div>
        <div id="resultat" ></div>
     
      </body>
    </html>

    Et je veux maintenant afficher chacune des résultats avec une intervalle de temps de 5s, càd que les résultats va s'afficher successivement à chaque 5s, voici le code que j'ai crée avec cette intervalle de temps, mais il y a une erreur sur l'affichage, s'il vous plait pouvez vous me dire pourquoi ça ne marche pas? merci !

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    <!DOCTYPE html>
    <html>
      <head>
        <meta charset="utf-8">
        <style type="text/css">
          #container{ background-color: lightgreen; text-align: center ;width: 350px; border:solid 1px black; min-height: 15px}
          #resultat{ background-color: #80BFFF; width: 350px; border:solid 1px black; min-height: 150px}
        </style>
        <script>
          p = new Array();
          function calculer() {
            var affiche=document.getElementById("resultat");
            x=1*document.getElementById("nb_a").value;
            y=1*document.getElementById("nb_b").value;
            p[0]=x;
            p[1]=p[0]*y;
            affiche.innerHTML +="<br/>p["+ 1 +"]=a*b = "+ p[1] +"<br/>";
            
            for (var i = 2; i < 10; i++) {
            k=i-1;
     
     
            var container = document.getElementById('container'),
            timeLeft = 0;
            var timerID = setTimeout(function() 
            { // On crée notre compte à rebours
                clearInterval(intervalID);
            }, 5000);
     
            var intervalID = setInterval(function() { // On met en place l'intervalle pour afficher la progression du temps
                //------------------
            p[i]=p[k]*y;
            affiche.innerHTML +="p["+ i +"]=p["+ k +"]*b = "+ p[i] +"<br/>";
                //------------------
            }, 1000);
     
     
            }
            
          }
        </script>
      </head>
      <body>
        <p>a = <input id="nb_a"></p>
        <p>b = <input id="nb_b"></p>
     
        <input type="button" value="CALCULER" onclick="calculer();"><br/>
     
        <div id="container" >Voici quelques resultats des calculs :</div>
        <div id="resultat" ></div>
     
      </body>
    </html>

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 656
    Points
    66 656
    Billets dans le blog
    1
    Par défaut
    regarde du coté se setTimeout() ou setInterval() ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Futur Membre du Club
    Homme Profil pro
    genie logiciel
    Inscrit en
    Mai 2015
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : genie logiciel

    Informations forums :
    Inscription : Mai 2015
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    je ne comprends pas vraiment ce que vous voulez dire par là, bon, à ma connaissance, ici setTimeout() permet d'appeler la fonction clearInterval() apres 5000ms d'execution de intervalID, et là, le compte à rebours dans intervalID va s'arreter, et c'est là que je veux afficher le resultat. pouvez vous me corriger svp?

  4. #4
    Futur Membre du Club
    Homme Profil pro
    genie logiciel
    Inscrit en
    Mai 2015
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : genie logiciel

    Informations forums :
    Inscription : Mai 2015
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Le voici la sortie avec intervalle de temps, j'ai reussi a le programmer et peut etre que quelqu'un le cherchera un jour, alors je le met ici

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
     
     
    <html>
    <head>
        <title>Chronomètre</title>
          <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
      </head>
     
    <body>
    <center>
     
     
    <button onclick="start()">Clique ici</button>
    <div id="bip" class="display"></div>
     
    <script>
    var counterStep =1;
    var numberStep = 3;
    var intervalId = null;
    function action()
    {
      clearInterval(intervalId);
      document.getElementById("bip").innerHTML +="Arret <br/>";	
     
    }
    function bip()
    {
     
      document.getElementById("bip").innerHTML +="étape numéro ["+ (counterStep+1) +"]. <br/>";
          counterStep++;
     
    }
    function start()
    {
      document.getElementById("bip").innerHTML +="<br/>étape numéro ["+ 1 +"]. <br/>";
      intervalId = setInterval(bip, 5000);
      setTimeout(action, numberStep * 5000);
     
    }	
    </script>
    </center>
    </body>
    </html>

  5. #5
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    var counterStep =1;
    var numberStep = 3;
    var intervalId = null;
    function action()
    {
      clearInterval(intervalId);
      document.getElementById("bip").innerHTML +="Arret <br/>";	
    }
    function bip()
    {
      document.getElementById("bip").innerHTML +="étape numéro ["+ (++counterStep) +"]. <br/>";
    }
    function start()
    {
      if(intervalId!=null) clearInterval(intervalId);
      counterStep = 0;
      intervalId = setInterval(bip, 5000);
      setTimeout(action, (numberStep+1) * 5000);
    }
    A+.

  6. #6
    Futur Membre du Club
    Homme Profil pro
    genie logiciel
    Inscrit en
    Mai 2015
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : genie logiciel

    Informations forums :
    Inscription : Mai 2015
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Merci!! ok, la prochaine fois on discutera des nouvelles problemes!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Formulaire multi-critères avec affichage des résultats de recherche
    Par Jean-Sam dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 26/05/2014, 12h44
  2. Affichage page par page des résultats avec des pointillés pour les numeros de page
    Par lewhechris dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 27/10/2011, 12h15
  3. Réponses: 3
    Dernier message: 22/10/2010, 07h15
  4. [MySQL] Affichage des résultats de la requête avec la fonction mysql_fetch_row
    Par shada dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 10/03/2009, 14h42
  5. Réponses: 2
    Dernier message: 17/05/2007, 00h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo