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 :

Fonction ajout en boucle


Sujet :

JavaScript

  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 125
    Points : 92
    Points
    92
    Par défaut Fonction ajout en boucle
    Bonjour a tous, je débute un peux en JS, et je viens vous demandez un peux d'aide.

    Je suis actuellement sur un petit jeux ( un genre de cookie clicker ), le peux que j'ai fais fonctionne, seulement, lorsque je veux, en javascript faire en sorte que mon nombre de "cookie" s'incrémente en boucle(toute les 1 secondes), je ne vois pas comment faire, j'ai regarder des fonctions avec delay,sleep, la boucle while fait bien évidement cracher le navigateur, je suis un peux bloquer :/

    Merci d'avance !

  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 640
    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 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    delay,sleep,
    en javascript ?

    regarde plutot du coté de setInterval(), setTimeout()

  3. #3
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 125
    Points : 92
    Points
    92
    Par défaut
    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
    <script type="text/javascript" src="jquery.min.js"></script>
    <script>
    var i = 0; var usine = 0;
    $('.lo').click(function(){
    	i++;
    	$('.cookie').html('Vous avez '+i+' cookie');
    	$('.usine').click(function(){
    		if(i >= 10){
    			i = i - 10;
    			usine++;
    			$('.us').html('Vous avez '+usine+' usine');
    			$('.cookie').html('Vous avez '+i+' cookie');
    		}
    	})	
    })
    $('.cl').click(function(){
    	console.log(usine);
    });
    if(usine >= 1){
    	window.setInterval(function(){
    	  i++;
    	  $('.cookie').html('Vous avez '+i+' cookie');
    	}, 1000);
    }
    </script>
    Voilà mon problème, je vois pas trop comment faire, sachant qu'il faut une "usine" pour pouvoir générer des "cookies" par seconde, il faut bien une condition, mais on y passe une seul fois seulement ><

    EDIT: j'ai fais autrement du coup ^^', merci quand même pour la réponse !!

  4. #4
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut
    La condition if(usine >= 1) n'est évaluée qu'une fois, avec la valeur à laquelle tu l'as initialisée : zéro. Elle ne va pas magiquement être réévaluée après coup. Ça ira mieux dans ce sens là:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    window.setInterval(function(){
      if(usine >= 1){
         i++;
         $('.cookie').html('Vous avez '+i+' cookie');
      }
    }, 1000);

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

Discussions similaires

  1. [VBA]Fonction 'ajout' en vba sur une table
    Par rico63 dans le forum VBA Access
    Réponses: 15
    Dernier message: 28/03/2007, 16h56
  2. [Javascript] exécution de la fonction setTimout() en boucle
    Par mullger dans le forum Général JavaScript
    Réponses: 16
    Dernier message: 23/01/2007, 09h44
  3. Réponses: 10
    Dernier message: 07/01/2007, 12h03
  4. [VBA][Débutante] Fonction Excel avec Boucle
    Par Inelukia dans le forum Macros et VBA Excel
    Réponses: 32
    Dernier message: 11/01/2006, 19h31
  5. Appel d'une fonction dans uns boucle d'un tableau
    Par PrinceMaster77 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 04/02/2005, 15h37

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