Si vous voulez dire que vous voulez que le code à exécuter périodiquement alors que la page est affichée, vous pouvez utiliser setInterval
, qui fera appel à la fonction que vous donnez sur un intervalle spécifique (plus ou moins), ou une série chaînée de setTimeout
appels (setTimeout
appelle la fonction que vous lui donnez une fois, vous auriez alors la fonction appeler à nouveau setTimeout
). (Ces liens sont à la documentation de Mozilla, mais ces appels existent dans tous les navigateurs.)
J'ai tendance à préférer les séries chaînées d'appels setTimeout
parce qu'il est plus difficile de les faire s'éloigner de vous; setInterval
continue de se produire jusqu'à ce que vous appeliez le clearInterval
sur la poignée qu'il renvoie.
Ainsi, par exemple:
checkTheCookies(); // The initial check on page load
function checkTheCookies() {
if(!$.cookie("popbox")){
if(!$.cookie("visited") && !$.cookie("firstvisit")){
var expirydate = new Date();
expirydate.setTime(expirydate.getTime() + (1 * 60 * 1000));
$.cookie("popbox", "feedback_popup", { expires: expirydate });
$.cookie("firstvisit", 1, { expires: 9999 });
} else {
if(!$.cookie("visited") && $.cookie("firstvisit")){
showPopuptimer();
}
}
}
// Schedule the next check 15 seconds later (time in milliseconds)
setTimeout(checkTheCookies, 150000);
}
Vous pourriez avoir besoin d'un if
là-bas pour si vous avez une sorte de pop-up montrant et ne veulent pas faire le contrôle alors que le pop-up est là.
Cela fonctionne avec setInterval - il fait exactement ce que je veux aussi! Merci :) –
@green_arrow: Heureux qui a aidé! –