Javascript setInterval probleme avec "this&qu
Grew
Messages postés
14
Date d'inscription
Statut
Membre
Dernière intervention
-
Grew Messages postés 14 Date d'inscription Statut Membre Dernière intervention -
Grew Messages postés 14 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'essai de faire un petit script qui effectue un fade de couleur sur le fond d'un div lors du passage de la souris.
Voici mon code:
Le problème est au niveau du "zis.style.backgroundColor="rgb(200,200,"+newVal+")" ", la console d'erreur me dit que zis.style est not defined.
Pourtant, ce code marche:
Pouriez vous m'expliquer ou est mon erreur?
Merci d'avance pour votre aide.
J'essai de faire un petit script qui effectue un fade de couleur sur le fond d'un div lors du passage de la souris.
Voici mon code:
var mestds=document.getElementsByTagName('td'); val= 0; function degrade(val,zis) { if(zis==null){zis=this} newVal = val + 1; if(newVal <= 255) { zis.style.backgroundColor="rgb(200,200,"+newVal+")" var timer = setInterval('degrade(newVal,zis);', 40); } else { clearInterval(timer); newVal = 500; } } for(i=0; i<mestds.length ; i++) { mestds[i].onmouseover=degrade(val,zis) }
Le problème est au niveau du "zis.style.backgroundColor="rgb(200,200,"+newVal+")" ", la console d'erreur me dit que zis.style est not defined.
Pourtant, ce code marche:
function fade_color() { this.style.backgroundColor='rgb(200,200,30)' } for(i=0; i<mestds.length ; i++) { mestds[i].onmouseover=fade_color }
Pouriez vous m'expliquer ou est mon erreur?
Merci d'avance pour votre aide.
A voir également:
- Javascript setInterval probleme avec "this&qu
- Telecharger javascript - Télécharger - Langages
- Hijack this - Télécharger - Antivirus & Antimalwares
- Javascript echo ✓ - Forum PHP
- Your browser sent a request that this server could not understand ✓ - Forum Réseaux sociaux
- This is the mail system at host ✓ - Forum Mail
1 réponse
Deuxieme petit probleme du même type, j'ai essayé de faire le même programme mais sans utiliser le this, alors ça donne ça:
Quand mon curseur passe sur la div1, le fade se fait bien, mais lorceque je repasse une deuxieme fois le curseur sur le div1, le fade se fait mais deux fois plus rapidement que la premiere fois, idem pr la troisième fois, etc..
Je pense que c'est un probleme avec le cleearInterval(), ai-je raison? que dois-je faire pour réparer ce probleme?
function lance() { val=255 test() } function test() { var timer = setInterval("if(val >=0) { div1.style.backgroundColor='rgb(255,255,'+val+')'; val-=1; }else{ clearInterval(timer);} div1.innerHTML=val; ", 1); } div1.onmouseover=lance
Quand mon curseur passe sur la div1, le fade se fait bien, mais lorceque je repasse une deuxieme fois le curseur sur le div1, le fade se fait mais deux fois plus rapidement que la premiere fois, idem pr la troisième fois, etc..
Je pense que c'est un probleme avec le cleearInterval(), ai-je raison? que dois-je faire pour réparer ce probleme?