setTimeout

René Paschold

Erfahrenes Mitglied
Hallo,

nochmal eine Frage:

Ich löse eine JS Funktion per onClick eines Buttons aus.
In diese Funktion übergebe ich einen Parameter.

Am Ende der Funktion soll der Timer gestartet werden der dann auch wieder das Objekt in die Methode übergibt.

Code:
function GetData(obj)
{
  // do something;
  setTimeout("GetData(obj)", 1000);
}

<a href="#" onClick="GetData(this)">Hier</a>

So, aber wie schaffe ich jetzt das der Funktionsaufruf über setTimeout auch das entsprechende Objekt übergibt?
 
Hm, so ne richtige Lösung is mir auch net eingefallen:
PHP:
<html>
<head>
<script type="text/javascript">
var temp_obj;

function getData( obj )
{
    alert("Schritt 1");
    temp_obj = obj;
    setTimeout("getData2();", 1000);
}

function getData2()
{
    getData3(temp_obj);
}

function getData3( obj )
{
    alert(obj.href);
}
</script>
</head>
<body>
<a href="" onClick="getData(this);return false;">Klick</a>
</body>
</html>
 
Das wird nicht funktionieren, weil du ja zuerst GetData ausführst, und den rückgabewert in die eval-Funktion schreibts.
 
Mmmh...stimmt auch wieder :rolleyes: ,na dann eben so:
Code:
tmp=false;
function GetData(obj)
{
if(!tmp){tmp=obj;}
setTimeout("GetData(tmp)",1000);
}
Ist aber im Endeffekt auch nix anderes wie bei dir,nur nen bisserl kürzer :-)
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück