SetTimeout

pas44 Messages postés 29 Statut Membre -  
pas44 Messages postés 29 Statut Membre -
Bonjour,
Je cherche à faire que les cellules d'un tableau se colorient en orange quand je passe la souris dessus et en bleu quand je ne la survole plus, mais que au bout de 10 seconde. (Oui je sais, Why...! mais c'est pour la bonne cause.)
j'utilise dans la balise TD :
onMouseOver=this.style.background='#FF9933'
onmouseout=setTimeout(this.style.background='#3F0AD0',10000)

ça fonctionne, a part la temorisation ...
help !
merci

5 réponses

  1. asmaanoor Messages postés 90 Statut Membre 18
     
    Bonsoir,
    essaye ca
    onMouseOver=setTimeout("this.style.background='#FF9933"',10000)
    onmouseout=setTimeout("this.style.background='#3F0AD0'",10000)
    0
  2. Atropa Messages postés 2051 Statut Membre 274
     
    bonsoir,

    essai ça :

    <!DOCTYPE html>
    <html>
    <head>
    	<title></title>
    	<script>
    	function colorTab(id,color1,color2,timeOut) {
    		var t = document.getElementById(id);
    		var td;
    		for(var i = 0;td = t.getElementsByTagName('td')[i];i++) {
    			td.colorTdOpt = {
    				timeOut : timeOut,
    				color1 : color1,
    				color2 : color2
    			}
    			td.addEventListener('mouseover',colorTd,false);
    			td.addEventListener('mouseout',colorTd,false);
    		}
    	}
    	
    	function colorTd(e) {
    		var td = e.target;
    		switch(e.type) {
    			case 'mouseover' :
    				td.style.backgroundColor = td.colorTdOpt.color1;
    				break;
    			case 'mouseout' :
    				setTimeout(function() {td.style.backgroundColor = td.colorTdOpt.color2;},td.colorTdOpt.timeOut);
    				break;
    		}
    	}
    	
    	
    	</script>
    	<style type="text/css">
    
    	</style>
    </head>
    <body>
    
    <table id="tableau">
    <tr><td>blabla</td><td>blabla</td><td>blabla</td><td>blabla</td><td>blabla</td><td>blabla</td></tr>
    <tr><td>blabla</td><td>blabla</td><td>blabla</td><td>blabla</td><td>blabla</td><td>blabla</td></tr>
    <tr><td>blabla</td><td>blabla</td><td>blabla</td><td>blabla</td><td>blabla</td><td>blabla</td></tr>
    <tr><td>blabla</td><td>blabla</td><td>blabla</td><td>blabla</td><td>blabla</td><td>blabla</td></tr>
    <tr><td>blabla</td><td>blabla</td><td>blabla</td><td>blabla</td><td>blabla</td><td>blabla</td></tr>
    </table>
    
    
    <script>
    colorTab('tableau','red','green',1000);
    </script>
    </body>
    </html>
    
    0
  3. pas44 Messages postés 29 Statut Membre
     
    Désolé. ça ne marche pas !
    0
    1. Atropa Messages postés 2051 Statut Membre 274
       
      ce que je viens de t'envoyer fonctionne peut être pas exactement comme tu le veux mais ça fonctionne. met l'ensemble du code dans un fichier vierge et ouvre le avec firefox ou autre
      0
    2. pas44 Messages postés 29 Statut Membre
       
      Merci Altropa. Cela fonctionne avec firefox...
      mais pas avec IE dommage
      0
  4. pas44 Messages postés 29 Statut Membre
     
    Si ça marche !
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. pas44 Messages postés 29 Statut Membre
     
    Merci Altropa. Cela fonctionne avec firefox... mais pas avec IE dommage
    0
    1. Atropa Messages postés 2051 Statut Membre 274
       
      j'ai regardé sur ie 9 ca tourne
      0
    2. Atropa Messages postés 2051 Statut Membre 274
       
      il n'y a pas un cadre en bas qui dit qu'il a bloqué un script ?
      0
    3. pas44 Messages postés 29 Statut Membre
       
      Ha...je m'y remet
      0
    4. pas44 Messages postés 29 Statut Membre
       
      Quand je l'ouvre en local ie me demande d'autoriser l'activex
      Mais pas sur el net !
      0
    5. pas44 Messages postés 29 Statut Membre
       
      Comment fait t'on sur IE pour débloquer un script ?
      0