hallo
schreibe mein 1.javascript pgm, war nach 2 tagen zu 99% fertig und bin nun seit 6 tagen am letzten 1% problem - hoffentlich kann jemand helfen.
will ein memory-spiel mit bildern machen. erstelle in asp/html eine tabelle aus z.b. 4x4 feldern, in jedes kommt ein bild rein mit einem onClick event, der das folgende javascript ausführt.
- das bild zum 1. angeklickten objekt anzeigen
 - das bild zum 2. angeklickten objekt anzeigen
 - vergleichen ob beide bilder identisch sind
 - wenn ja, passiert nichts mehr
 - wenn nein, sollen nach 2 sekunden beide bilder wieder gedreht werden
 
das ganze funktioniert einwandfrei ausser, dass beim 2. bild, wenn das pgm in den timedelay reinläuft, das bild nicht gedreht wird, bis die zwei sekunden verzögerung um sind, dann wird das bild gedreht und natürlich gleich zurückgedreht. sobald ich z.b. einen alert irgendwo reinhänge dann funktioniert es, es muss irgendein aktualisierungsproblem sein.
glaubt mir, ich habe alles versucht und in jeder hilfe gesucht, die zu finden war (ca. 40 std. an diesem problem). ich mache den preload der bilder, habe schon versuchsweise alles in mehrere functions gesplittet, es mit der timer-funktion versucht, habe schon eine name.complete-abfrage eingebaut, es mit .reload oder window.opener.history und 1000 anderen varianten versucht.
hier kommt der code
<script language="JavaScript">
<!-- vor alten Browsern verstecken
var val_DLCheck, val_LastPicPos, val_LastPicNr, bln_ImgLoad;
val_DLCheck = 0;
function check_it_up(val_PicPos, val_PicNr) {
val_DLCheck += 1;
document["p"+val_PicPos].src = "./" + val_PicNr + ".jpg";
bln_ImgLoad = false;
while (bln_ImgLoad != true) {
bln_ImgLoad = document["p"+val_PicPos].complete;
}
document["p"+val_PicPos].src = "./" + val_PicNr + ".jpg";
if (val_DLCheck == 1) {
val_LastPicPos = val_PicPos;
val_LastPicNr = val_PicNr
}
else {
val_DLCheck = 0;
if (val_LastPicNr != val_PicNr) {
 timedelay()
 document["p"+val_PicPos].src = "./rs.jpg";
 document["p"+val_LastPicPos].src = "./rs.jpg";
}
}
}
function timedelay() {
var val_Time1, val_Time2;
val_Time1 = new Date().getTime();	val_Time2 = new Date().getTime();
while (val_Time1 >= (val_Time2-1500)) {
val_Time2 = new Date().getTime();
}
}
// -->
</script>