Ein Button mit Zeitverzögerung

Coding

 

Sie kennen es sicherlich von Sharewareprogrammen. 10 Sekunden Zeitverzögerung bis zum Start des Programms, damit sich der Benutzer Zeit nimmt, die Bezugsquellen und -preise auch wirklich zu lesen 😉

Im Web kann das, z.B. bei Lizenzbedingungen, auch nützlich sein. Mit ein wenig Javascript sorgt man dafür, dass der Sende-Button erst mit Zeitverzögerung freigeschaltet wird.

Demo

So in etwa würde der Quellcode auf der HTML-Seite aussehen aussehen:


<form action=““ method=“post“ name=“Testformular“>
<input type=“submit“ name=“ok“ value=“Gelesen und Einverstanden (8)“>
</form>
<script type=“text/javascript“>
var sekunden = 8;
var wait = sekunden * 1000;
document.Testformular.ok.disabled=true;
for(i=1;i<=sekunden;i++) {
setTimeout(„buttontext(“ + i + „)“, i * 1000);
}
function buttontext(num) {
if(num == (wait/1000)) {
document.Testformular.ok.value =
„Gelesen und Einverstanden „;
document.Testformular.ok.disabled=false;
}
else {
anzahl = (wait/1000)-num;
document.Testformular.ok.value =
„Gelesen und Einverstanden (“ + anzahl + „)“;
}
}
</script>

Die Zeit, die der Button noch nicht freigegeben sein soll, bestimmt man mit

var sekunden = 8;

für den ‚Zeitstempel‘ auf dem Button sollte man in dieser Zeile ebenfalls den gleichen Wert angeben:

<input type=“submit“ name=“ok“ value=“Gelesen und Einverstanden (8)“>

Ansonsten spielt der Zeitstempel auf dem Button ‚verrückt’…

Sascha

Hauptberuflich "Technologietreiber für Onlinezeugs" in einem Großkonzern. Interessiert an Technik im Allgemeinen, je abgedrehter, umso besser. Neben Familie, Hund und Beruf hat er trotzdem noch Spaß daran Sachen aufzuschreiben, die einem tagsüber so begegnen (manchmal auch nachts ;)).

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert