Flooden verhindern, senden erst nach 2 sekunden

ASD20054

Mitglied
Hallo,

ich habe einen IM in meine Homepage eingebaut und da will ich noch eine Zusatz hinzufügen und zwar, dass wenn man eine Nachricht gesendet hat kurz warten muss (ca. 2 sekunden) und dann die nächste Nachricht senden kann.

Hier mal ein Auszug:

HTML:
function sendMessage( msg )
{
  if(document.getElementById("text").value == '')
  {
    alert("Gib bitte eine Nachricht ein!");
  }
  else if() // was muss hier rein?
  {
    alert("Bitte nicht flooden!");
  }
  else
  {
    //senden
  }
}
 
Hi,

vielleicht beim Senden ein Timeout starten, nach dessen Ablauf eine Variable wieder auf null zurück gesetzt wird. Diese Variable wird zum Testen auf Flood verwendet.

Beispiel:
Code:
<html>
<head>
<title>www.tutorials.de</title>
<meta name="author" content="Quaese">
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<script type="text/javascript">
  <!--
var hTimer = null;

function senden(){
  if(document.getElementById("txtInput").value == ""){
    alert("Bitte Text eingeben");
  }else if(hTimer!=null){
    alert("Nicht flooden");
  }else{
    alert("gesendet");
    hTimer = window.setTimeout(function(){ hTimer=null;}, 2000);
  }
}
 //-->
</script>
</head>
<body>
<div>
  <button onclick="senden()">senden</button>
  <input type="text" id="txtInput" value="text">
</div>
</body>
</html>
Ciao
Quaese
 

Neue Beiträge

Zurück