Die letzten 5 Postings in diesem Thema » Alle anzeigen
von subjective
Die Erklärung - der übergebene Parameter von setTimeout wird im später beim Aufruf als Quellcode interpretiert. Dieser Aufruf erfolgt jedoch nicht mehr innerhalb deiner Funktion - daher ist "id" dann nicht mehr bekannt. Du kannst jedoch den Inhalt von "id" in deinen Quellcode-String einsetzen. Dann stehen zum Zeitpunkt des eigentlichen Aufrufes alle Informationen zu Verfügung.
von Ori
Da fehlen leider Anführungszeichen...
1:
2:
3:
function unsichtbar(id) {
window.setTimeout("document.getElementById('"+id+"').style.visibility = 'hidden';", 500);
}
von chip
1:
2:
3:
function unsichtbar(id) {
window.setTimeout("document.getElementById("+id+").style.visibility = 'hidden'",500);
}
So sollte es funktionieren.
von ldf
Hi
Ich hab eine Funktion geschrieben die ein div nach einiger Zeit unsichtbar machen soll:
function unsichtbar(id) {
window.setTimeout("document.getElementById(id).style.visibility = 'hidden'",500);
}
im Body steht:
onMouseOut="unsichtbar('leuchten')"
Das Problem ist jetzt das der Parameter 'leuchten' nicht übergeben wird. Schreib ich getElementById('leuchten') anstatt getElementById(id) funktioniert die Funktion ohne weiteres.