Sebastian Salzgeber: clearInterval Dynamisch machen

Beitrag lesen

Ich gebe jetzt einfach mal den kompletten Code aus auch wenn das es vielleicht noch verwirrender macht

=====================================================================

var GvLSet = new Array();
GvLSet['LSet01']=new Array();
GvLSet['LSet01'][0]='LTMoveableConsole01'; //Container-ID
GvLSet['LSet01'][1]='DIVInt01';   //SchlüsselTimer
GvLSet['LSet01'][2]=-190;   //Startposition
GvLSet['LSet01'][3]=0;    //Entposition
GvLSet['LSet01'][4]=10;    //Schrittgeschw.
GvLSet['LSet01'][5]=-190;   //SwingValue

function GLOBALxDIVmove(DIVType,DIVArray){
DIVmain = document.getElementById(GvLSet[DIVArray][0]).style;
if(DIVType==1){
  if(GvLSet[DIVArray][5]<GvLSet[DIVArray][3]){
   GvLSet[DIVArray][5]+=GvLSet[DIVArray][4];
   DIVmain.top=GvLSet[DIVArray][5]+"px";
   DIVmain.top=GvLSet[DIVArray][5]+"px";
  }else{window.clearInterval(DIVInt01);}  //window.clearInterval(GvLSet[DIVArray][1]);
}else{
  if(GvLSet[DIVArray][5]>=GvLSet[DIVArray][2]){
   GvLSet[DIVArray][5]-=GvLSet[DIVArray][4];
   DIVmain.top=GvLSet[DIVArray][5]+"px";
   DIVmain.top=GvLSet[DIVArray][5]+"px";
  }else{window.clearInterval(DIVInt01);}  //window.clearInterval(GvLSet[DIVArray][1]);
}
}

function PrepareMove(DIVType,DIVArray){
if(DIVArray=='LSet01'){
  if(DIVType){
  DIVInt01 = window.setInterval("GLOBALxDIVmove('"+DIVType+"','"+DIVArray+"')",30);
  }else{
  DIVInt01 = window.setInterval("GLOBALxDIVmove('"+DIVType+"','"+DIVArray+"')",30);
  }
}else if(DIVArray=='LSet02'){
//Und so weiter
}
}

=====================================================================

Beschreibung:
Die Funktion wird aufgerufen PrepareMove(1,'LSet01')
Der Timer wird gestartet
Die Funktion GLOBALxDIVmove(1,'LSet01') wird aufgerufen
Sie führt Ihre Anweisungen aus (nebensächlich).
Jetzt soll am ende (auskommentiert) der Interval dynamisch beendet werden.

...doch wie?
Wenn ich den SetInterval() ins Array schreibe wird dieser ja direct onLoad gestartet. Der jeweilige Timer soll ja aber erst beim Funktionsaufruf gestartet werden.

Ich hoffe das hilft nun weiter.

--
sh:) fo:| ch:{ rl:( br:& n4:~ ie:| mo:? va:{ de:< zu:| fl:) ss:| ls:< js:|