# window.timeout Objekt auf Existenz prüfen



## Dieguito (31. Mai 2007)

wie kann ich denn dieses Objekt auf Existenz testen:

temp = window.setTimeout("function()", 10000);

Ich möchte wissen, ob dieses Objekt aktiviert ist, um es ggf. mit 

clearTimeout(temp);

löschen zu können.

Wenn die 10000 MS abgelaufen sind, oder das temp noch nicht aktiviert wurde, gibt es den Fehler, dass das Objekt nicht existiert. Wie kann ich also seine Existenz testen?


----------



## Gumbo (31. Mai 2007)

Folgendes sollte eigentlich reichen:
	
	
	



```
if( temp ) {
	clearTimeout(temp);
}
```


----------



## Dieguito (31. Mai 2007)

hatte ich auch gedacht, ergibt aber:

temp is not defined

(Firefox Javascript Konsole)


----------



## Quaese (31. Mai 2007)

Hi,

die Timeout-Variable erhält beim Start eine Nummer zugewiesen, anhand sie identifiziert werden kann. Wird der
Timeout abgebrochen, bleibt die Nummer jedoch bestehen. Damit muss für die Belegung selbst gesorgt werden.

Möglich wäre eine vorherige Definition auf einen Wert (null), der anzeigt, dass kein Timeout gestartet wurde. Wird 
der Timerout angehalten, wird die Variable ebenfalls wieder auf diesen Wert gesetzt.

Beispiel:

```
<html>
<head>
<meta name="author" content="Quaese">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>www.tutorials.de</title>
<style type="text/css">
</style>
<script type="text/javascript">
  <!--
var hTimer = null;

function startTimer(){
  hTimer = window.setTimeout("theFunc()", 5000);
}

function stopTimer(){
  if(hTimer != null){
    window.clearTimeout(hTimer);
    hTimer = null;
  }
}

function theFunc(){
  alert("Timeout abgelaufen");
}

function getTimerVal(){
  alert(hTimer);
}
 //-->
</script>
</head>

<body>
<button onclick="getTimerVal();">getTimerType</button>
<button onclick="startTimer();">startTimer</button>
<button onclick="stopTimer();">stopTimer</button>
</body>
</html>
```
Ciao
Quaese


----------



## Dieguito (31. Mai 2007)

Danke für Deine Antwort.

Die Browser können offensichtlich Timer nicht aus Childframes ansprechen. Legt man eine Function, die den Timer abschaltet, in das Parentframe und ruft dieses aus dem Child auf 
parent.document.timerAbschalten();
funktioniert es jedoch, habe ich festgestellt.


----------

