J'ai ce setinterval avec l'alerte de fonction:
setInterval(function(){ alert('oo'); }, 5000);
Mais j'aimerais changer mon intervalle (5000) chaque intervalle de temps passe l'alerte () – J'aimerais qu'il ait choisi au hasard entre 5 et 10 secondes. Une idée de comment le faire?
Vous devez utiliser setTimeout
pour définir l'intervalle après lequel la fonction doit être exécutée.
function myFunction() { var min = 5, max = 10; var rand = Math.floor(Math.random() * (max - min + 1) + min); //Generate Random number between 5 - 10 alert('Wait for ' + rand + ' seconds'); setTimeout(myFunction, rand * 1000); } myFunction()
Vous pouvez le faire comme ceci:
function myFunction() { alert('oo'); setTimeout(myFunction, Math.random() * 5000) } myFunction()
Les intervalles, une fois réglés, sont fixés.
Utilisez setTimeout
et appelez la fonction de manière récursive à la place.
function myAlert() { setTimeout(myAlert, generate_random_time()); alert('oo'); }