Archivlink: javarea.de Forum > JavaScript > clearTimeout(str);
Vollständigen Link anzeigen: javarea.de Forum > JavaScript > clearTimeout(str);
Pages: [1]
| geschrieben von Eppi am 05.04.2006 - 11:31 |
Hallo,
kennt Ihr eine Möglichkeit, wie ich clearTimeout verwenden kann - dabei jedoch das zu löschende Timeout per String übergeben kann?
als Besipiel:
test = setTimeout("alert('test');", 500);
var test2 = 'test';
clearTimeout(test2);
gruß, paul |
| geschrieben von Martin am 05.04.2006 - 12:42 |
Ave,
so funktioniert es leider nicht. Entweder du arbeitest mit einem globalen Array.
var timerArray = new Array();
timerArray["myTimer"] = setTimeout("func()", 100);
http://de.selfhtml.org/javascript/o....ive_arrays
oder mit einer Klassen-Funtion
function myTimerClass( name )
{
this.object = this;
this.start = function() {
this.timer = setTimeout("func()", 100);
}
this.stop = function() {
clearTimeout( this.timer );
}
}
http://developer.mozilla.org/en/doc....cts:Object
mfg martin |
| geschrieben von Eppi am 05.04.2006 - 15:21 |
Hallo Martin - vielen Dank! ich hab es über ein Array innerhalb der Klasse gelöst. Kurze Frage noch zu Deinem Beispiel. Ist diese Zeile unbedingt nötig?
this.object = this;
man kann doch auch ohne diese Zeile über this darauf zugreifen.
gruß, paul |
| geschrieben von Martin am 05.04.2006 - 19:05 |
Es funktioniert auch so. Aber zwecks des besseren Programmierstils und weil es der Standard hergibt sollte man es machen. Manchmal ist es auch wichtig. Besonders wenn man aus einer Klasse heraus eine interne Schleife mit setInterval oder setTimeout baut.
mfg martin |
| geschrieben von Eppi am 05.04.2006 - 19:29 |
ok, hast du dafür vielleicht ein kleines beispiel oder einen link?
gruß & danke, paul |
| geschrieben von Eppi am 05.04.2006 - 22:26 |
ok, da hätt ich jetzt aber auch drauf kommen können - vielen dank dir!
gruß, paul |
|