Partage
  • Partager sur Facebook
  • Partager sur Twitter

Button javascript

    15 juin 2018 à 1:23:55

    Bonjour j'ai un petit soucis j'ai un bouton sur lequel je voudrais que lorsque l'on clique dessus 1 fois affiche le fond d'écran en violet et si l'on clique une deuxième fois le fais revenir à la normale (c-a-d en blanc)

    voici le code :

    // var globales
    
    
    var click = 0;
    var pair = click%2;
    
    // fonction magenta (la fonction appelé lors du click sur le boutton)
    
    function magenta() {
    
    if (pair === 0) {
    
    document.querySelector('body').style.backgroundColor = "magenta";
    click++; }
    
    else { 
    document.querySelector('body').style.backgroundColor = "white";
    click++;}
    
    console.log(click);
    console.log(pair);
    
    }


    le problème semble venir de la variable pair qui ne fait pas le modulo, mais la variable click s'incrémente bien elle.

    Merci pour votre aide :)

    • Partager sur Facebook
    • Partager sur Twitter
      15 juin 2018 à 9:18:14

      Salut,

      Je ne comprends pas l'utilité de "pair" ici. Comme ça, ça fonctionne :

      // var globales
       
       
      var click = 0;
       
      // fonction magenta (la fonction appelé lors du click sur le boutton)
       
      function magenta() {
        
      if (click == 0) { 
      document.getElementsByTagName('body')[0].style.backgroundColor = 'magenta';
      click++;}
        
        else if (click = 1){
          document.getElementsByTagName('body')[0].style.backgroundColor = 'white';
          click--;
        }
      
       
      }



      • Partager sur Facebook
      • Partager sur Twitter
        16 juin 2018 à 14:41:46

        Merci pour ton aide ça fonctionne parfaitement :)

        Mais je ne comprends toujours pas pourquoi mon script plus haut ne fonctionné pas et refusé de faire le modulo ??

        -
        Edité par JohanLibert 16 juin 2018 à 14:42:27

        • Partager sur Facebook
        • Partager sur Twitter
          16 juin 2018 à 14:56:38

          Car tu ne fais jamais évoluer la valeur de pair dans ton code, elle reste tout le temps à 0. Incrémenter click ne fait en rien évoluer pair, ce n'est pas parce que tu as initialisé pair avec "click % 2" qu'il y aurait une espèce de mécanisme caché qui mettrait à jour pair quand click change.
          • Partager sur Facebook
          • Partager sur Twitter
            16 juin 2018 à 23:00:12

            ah d'accord oui j'ai compris Merci :)

            Mais comment faire alors pour que deux variables soient "liées" entre elles ?

            • Partager sur Facebook
            • Partager sur Twitter

            Button javascript

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown