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

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Changement bouton OnClick

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Changement bouton OnClick

n°1723863
akalaan
Posté le 24-04-2008 à 16:14:36  profilanswer
 

Bonjour à tous,
 
 
Sur la page de mon site, je dispose de bouton. Je voudrais faire en sorte que mes boutons changes de couleurs lors du survol (onmouseover), revienne à leur état d'origine lors du retrait (onmouseout), et reste dans l'état de survol lors du clic du chargement de la page voici ce que j'ai fait :
 

Code :
  1. <div id='parent'>
  2. <div id="logo" style="position: absolute; left: 11px; top: 5px; width: 183px; height: 57px; z-index: 6;">
  3.  <a href="index.php"><img width="190" height="47" border="0" src="images/logo.gif"/></a>
  4. </div>
  5. <div id='entete'>
  6.  <div id="metiers" style="position: relative; left: 290px; top: 71px; width: 478px; height: 41px; z-index: 4;">
  7.   <table border="0" cellspacing="0" cellpadding="0">
  8.    <tbody>       
  9.            <tr>
  10.      <td><a href="#" onClick="swapImage('visuAlarm.php','zoneAffiche','images/menu/metiers/BoutonOverAlarme.gif','alarme');clic=true" onMouseOut="swapImage('','','images/menu/metiers/BoutonAlarme.gif','alarme');etat=0;" onMouseOver="swapImage('','','images/menu/metiers/BoutonOverAlarme.gif','alarme');etat=1;"><img src="images/menu/metiers/BoutonAlarme.gif" border="0"  id="alarme" name="alarme" ></a></td>
  11. </tr>
  12.           </tbody>
  13.        </table>
  14.       </div>
  15. </div>
  16. <div id='contenu'>
  17.  <div id='zoneAffich'></div>
  18.  <noscript>
  19.   <div id='Warning'>
  20.   Attention, JavaScript inactif<br>
  21.   Activé puis réactualisé
  22.   </div>
  23.  </noscript>
  24.  <div align="center">
  25.   <p/>
  26.    <table width="700" align="right">
  27.           <tr>
  28.          
  29.     </tr>
  30.    </table>
  31.  </div>
  32. </div>
  33. </div>
  34. </body>


 
 
Voici le code JS
 

Code :
  1. function envoieRequete(url,id){
  2. var xhr_object = null;
  3. var position = id;
  4. if(window.XMLHttpRequest) xhr_object = new XMLHttpRequest();
  5. else
  6. if (window.ActiveXObject) xhr_object = new ActiveXObject("Microsoft.XMLHTTP" );
  7.  xhr_object.open("GET", url, true);
  8.  xhr_object.onreadystatechange = function(){
  9.   if ( xhr_object.readyState == 4 ){
  10.    document.getElementById(position).innerHTML = xhr_object.responseText;
  11.   }
  12.  }
  13. xhr_object.send(null);
  14. }
  15. var clic=false;
  16. var etat=0;
  17. var urlFile=" ";
  18. var posFile=" ";
  19. function swapImage(urlFile,posFile,urlImg,posImg)
  20. {
  21. if (!clic)
  22. {
  23.  if(etat==0)
  24.  {
  25.   document.getElementById(posImg).src=urlImg;
  26.         }
  27.      
  28.  if(etat==1)
  29.  {
  30.   document.getElementById(posImg).src=urlImg;
  31.   if((!urlFile)&&(!posFile))
  32.    {
  33.     envoieRequete(urlFile,posFile);
  34.    }
  35.  }
  36.    }
  37. }


 
 
Le changement de couleur fonctionne lors du premier OnMouseOver puis message d'erreur lors du OnMouseOut
mais change quand même de couleur pour revenir à l'origine

Code :
  1. uncaught exception: [Exception... "Component returned failure code: 0x80070057 (NS_ERROR_ILLEGAL_VALUE) [nsIXMLHttpRequest.open]" nsresult: "0x80070057 (NS_ERROR_ILLEGAL_VALUE)" location: "JS frame :: javascript: eval(__firebugTemp__); :: anonymous :: line 1" data: no]


 
Lorsque je clique, la couleur reste fixe mais la page ne s'affiche pas.
 
J'avoue ne pas savoir, cela fait un moment que je cherche et je ne trouve pas, auriez-vous des idées ???
 
Merci d'avance,
 
Cordialement,
 

mood
Publicité
Posté le 24-04-2008 à 16:14:36  profilanswer
 

n°1723923
akalaan
Posté le 24-04-2008 à 17:15:20  profilanswer
 

Bon et bien finalement cela fonctionne, j'ai dû légèrement modifier mon .js
 

Code :
  1. var clic=false;
  2. var etat=0;
  3. function swapImage(urlFile,posFile,urlImg,posImg)
  4. {
  5. var url = urlFile;
  6. var id = posFile;
  7. if (!clic)
  8. {
  9.  if(etat==0)
  10.  {
  11.   document.getElementById(posImg).src=urlImg;
  12.         }
  13.      
  14.  if(etat==1)
  15.  {
  16.   document.getElementById(posImg).src=urlImg;
  17.   if((url!="" )&&(id!="" ))
  18.    {
  19.     envoieRequete(url,id);
  20.    }
  21.  }
  22. }
  23. }


 
En revanche, un autre problème se dévoile.
 
Une fois cliqué sur un bouton et que la page s'est affiché, je ne peux plus cliqué sur les autres bouton, ça ne fait rien et je n'est pas de message d'erreur
 
Auriez-vous une idée ?
 
Merci d'avance,

n°1724215
akalaan
Posté le 25-04-2008 à 10:24:49  profilanswer
 

Re bonjour,
 
J'avoue ne pas comprendre pourquoi cela bloque.
 
Je découvre le monde du dev web donc dsl pour les questions idiotes.
 
Je pense que la manière que j'utilise n'est pas la bonne.
 
Pourriez-vous me conseiller, merci d'avance,


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

  Changement bouton OnClick

 

Sujets relatifs
changement d'etat cellule en fonction de la datebouton pour changer lien
sous menu flash: accés au boutonExecuter un BASH a partir d'un bouton
[XSL] comment inserer un bouton dans une page xslChanger la value d'un bouton Radio par son ID
[VBA] Petite question pour bouton sur ExcelPb de changement de variable avec un bouton sous flash
bouton submit disable une fois que l'on clic dessus 
Plus de sujets relatifs à : Changement bouton OnClick


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