Bonjour,

J'ai un problème avec la fonction setInterval et clearInterval. Le clearInterval n'a aucun effet lorsque plusieurs instances d'une même classe au sont animées avec un setInterval.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
 
class TSmartMenuPanel
{
 
...
 
public var idIntervalGT;
...
 
public function Goto(x,y)
{
	targetX=x;
	targetY=y;
	idIntervalGT= setInterval(this,"_GoToTarget",40,this);
}
 
public function StopGT()
{
	clearInterval(this.idIntervalGT);
             trace("panel.idIntervalGT :" +  this.idIntervalGT);
}
 
public function _GoToTarget(panel :TSmartMenuPanel)
{
	if(condition d'arrêt du mouvement)
	{
	             panel.StopGT();
		return;
	}
 
	... (code du mouvement)
}
 
}
en sortie du trace j'ai un truc comme ca :

panel.idIntervalGT: 14
panel.idIntervalGT: 15
panel.idIntervalGT: 14
panel.idIntervalGT: 15
panel.idIntervalGT: 14
panel.idIntervalGT: 15
panel.idIntervalGT: 14
panel.idIntervalGT: 15
...
panel.idIntervalGT: 15
panel.idIntervalGT: 14
panel.idIntervalGT: 15
panel.idIntervalGT: 14

et les interval ne s'arrête seulement lorsque que je fais un nouveau setInterval pour la même instance et même fonction

Quelqu'un aurait-il une idée ou la même expérience ?