• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

setTimeout

mo

Administrator
Teammitglied
Servus mitanand,

Code:
<span id="placeholder" onclick="reader()"></span>

<script>
function reader() {
    var xhr = new XMLHttpRequest();
    xhr.onreadystatechange = function() {
        if (xhr.readyState == 4 && xhr.status == 200) {
            document.getElementById('placeholder').innerHTML = xhr.responseText;
        }
    }
    var d = Date.now(); //timestamp
    xhr.open('GET', './alpenpaesse/rfid.txt?'+d);
    xhr.send();
}
setTimeout(reader, 2000);
</script>

Das Script läuft nicht von selbst, warum? Bei Klick auf das span-Element wird das Script ausgeführt.. Der Timer ist wie tot. Was übersehe ich?
 
so gehts:
Code:
function reader() {
    var xhr = new XMLHttpRequest();
    xhr.onreadystatechange = function() {
        if (xhr.readyState == 4 && xhr.status == 200) {
            document.getElementById('placeholder').innerHTML = xhr.responseText;
        }
    }
    var d = Date.now(); //timestamp
    xhr.open('GET', './alpenpaesse/rfid.txt?'+d);
    xhr.send();
setTimeout(reader, 2000);
}
reader();
 
Keine gute Idee! Du wiederholst bedingungslos. Wenn mal die Verbindung gestört ist, schaukelt sich das auf und führt zum Absturz. Pack den setTimeout() in die if Bedingung, dann ist es sauber.
 
Zurück
Oben