Einzelnen Beitrag anzeigen

OregonGhost

Registriert seit: 8. Jun 2002
Ort: Lübeck
1.216 Beiträge
 
Delphi 3 Professional
 
#3

Re: [JS] Seltsames Phänomen

  Alt 7. Mai 2007, 12:19
id ist ein Parameter für die Funktion showWMTT() und ist somit innerhalb dieser Funktion lokal. Wie (plöder roter Kasten) winkel79 bereits schreibt, definierst du als Handler für deinen Timeout Javascript-Code, der als String übergeben wird. Wenn du dort id angibst, steht dort explizit id, aber id ist nicht innerhalb dieses Codes definiert. Wenn du hingegen eine zusätzliche Variable id2 einführst, ist diese in Javascript global und auch dein Handler-Code kann auf diese zugreifen. Das, was du willst, ist vermutlich in der Tat winkel79s Lösung, aber ich hoffe, ich konnte noch etwas dazu erklären

Edit:
Ich habe meine Zweifel, dass der komplette Aufruf von setTimeout gekapselt gehört, sondern gehe von folgendem als Lösung aus:
Code:
showtimeout = window.setTimeout(\"showWMTT(\" + id + \", 0)\", time);
Allerdings dürftest du schon in Zeile 1 auf Probleme stoßen, oder?
Code:
<script language="JavaScript" type="text/javascript">
Das in einem PHP-String, den du nicht mit Hochkommata einleitest, müsste eigentlich zu einem Fehler bei der Ausgabe führen. In deinem Fall kannst du den PHP-String vielleicht eher mit Hochkommata kapseln und sparst dir dann auch die Escapes bei der setTimeout-Geschichte.
Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
  Mit Zitat antworten Zitat