Variable javascript.. elle me rendent dingue ; help.

Variable javascript.. elle me rendent dingue ; help. - HTML/CSS - Programmation

Marsh Posté le 03-08-2009 à 23:08:39    

Bonjour
Alors je cherche à faire un truc super simple... tellement simple que je comprend absolument pas pourquoi ca marche pas...
Et ca a tendance à m'énerver un peu .. je viens de passer 2 heures sans succès ..
 
Si une bonne âme pouvais m'aider !  
voila mon problème.
 
je chercher à modifier le backgroundColor d'un Div quand je click dessus.
Jusque la tout vas bien.
Mais je voudrais aussi que lorsque je reclique dessus il rechange de couleur. Je me suis dis qu'avec une variable ce serait très simple.. J'ai donc ecris ceci:
 
<script type="text/javascript">  
        var x=true;
 function colormenu(elementthis){  
   if (x=true){
        elementthis.style.backgroundColor="#dedfda";
        x=false;
   }
   else{
        elementthis.style.backgroundColor="";
        x=true;
   }      
 }  
</script>
<div id="test3" onclick="colormenu(this)"></div>
 
Mais cela ne fonctionne pas.
Quand je fais des check de ma variable. elle semble pourtant bien passé de true à false.
j'avais aussi essayé avec une variable type var x=1; et puis i++; et i--; sans plus de succès...
Il semble donc que ce soit un problème avec le else.
Mais je ne vois pas quoi ....  
 
Merci d'avance pour l'aide
Cordialement,
Paul.

Reply

Marsh Posté le 03-08-2009 à 23:08:39   

Reply

Marsh Posté le 04-08-2009 à 00:15:06    

Code :
  1. if (x=true) {


 
tu donne à x la valeur true, pas étonnant qu'il ne rentre pas dans le else.
 

Code :
  1. if (x == true) {


Reply

Marsh Posté le 04-08-2009 à 12:06:53    

Bon sang ... je me sens bête !
Surtout d'y avoir passé 2 heures lol
Merci beaucoup :)

Reply

Marsh Posté le 07-08-2009 à 10:46:27    

C'est pourquoi il est judicieux de coder ce genre de test à l'envers.
 

if ( true= 1) {


 
Tout interpreteur/compilateur qui se respecte devrait tiquer la dessus... pour js c'est pas sur.  :whistle:

Reply

Marsh Posté le 07-08-2009 à 12:07:14    

avander a écrit :

C'est pourquoi il est judicieux de coder ce genre de test à l'envers.

if ( true= 1) {


 


 
J'appelle ça contourner le problème. Il vaut mieux s'habituer à faire attention  [:cbrs]

Reply

Marsh Posté le 09-08-2009 à 01:06:06    

il y'à encore plus simple pour du boolean tu peu utiliser if(x) qui veux dire if x===true et pour false if(!x)  , non le triplage des === n'est pas une faute il faut savoir que pour les nombres et les booleans si tu veux utiliser un opérateur de comparaison , il faut utiliser === ou !== pour ne pas changer la nature de la variable.

Reply

Marsh Posté le 09-08-2009 à 03:03:33    

=== marche en JS ?
En PHP je savais mais en JS, jamais tenté :jap:


---------------
A VENDRE: Razer Chroma ARGB Controller / Boitier / Support Triple Screen / Ventirad / Carte USB3
Reply

Marsh Posté le 09-08-2009 à 17:23:54    

aussi


---------------
Blablaté par Harko
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed