[AJAX] Limiter l'utilisation d'une fonction ajax
Bonjour tout le monde !!
Je sèche sur un problème sûrement tout simple. Dans un premier temps le code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
document.getElementById("Reload").type = "button";
var ReloadTimer = (10*1000); // Temps en secondes
var ReloadCount = 0;
function CaptchaReload()
{
if(ReloadCount != 0) { setTimeout("CaptchaReload()",ReloadTimer); }
var captcha = document.getElementById("captcha");
var data = "";
var XhrObj = null;
if (window.XMLHttpRequest || window.ActiveXObject) {
if (window.ActiveXObject) {
try { XhrObj = new ActiveXObject("Msxml2.XMLHTTP"); }
catch(e) { XhrObj = new ActiveXObject("Microsoft.XMLHTTP"); }
} else { XhrObj = new XMLHttpRequest(); }
} else { alert("Votre navigateur ne supporte pas l'objet XMLHTTPRequest..."); }
XhrObj.open("GET", "/ajax/captcha.ajax.php", true);
XhrObj.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
XhrObj.send(data);
XhrObj.onreadystatechange = function()
{
if (XhrObj.readyState == 4 && XhrObj.status == 200)
{
captcha.src = XhrObj.responseText;
ReloadCount ++;
}
}
} |
Je cherche a limiter l'appel de à la fonction ReloadCaptcha pour que l'utilisateur ne puisse l'appeler qu'une fois toutes les x secondes. C'est dans le but d'éviter de surcharger mon serveur.
Là manque de bol, ça me rafraichi l'image toutes les 10 secondes automatiquement :p
Si quelqu'un a une idée pour que ça fonctionne comme je le souhaite :)
Merci d'avance !