Prototype - Exécution périodique
Plusieurs fois, il est nécessaire d'exécuter une fonction plusieurs fois après un certain laps de temps. Par exemple, vous souhaiterez peut-être actualiser votre écran après un certain temps. Prototype fournit un mécanisme simple pour l'implémenter à l'aide de l' objet PeriodicalExecuter .
L'avantage fourni par PeriodicalExecuter est qu'il vous protège contre plusieurs exécutions parallèles de la fonction de rappel.
Créer un périodique
Le constructeur prend deux arguments -
- La fonction de rappel.
- L'intervalle (en secondes) entre les exécutions.
Une fois lancé, un PeriodicalExecuter se déclenche indéfiniment, jusqu'à ce que la page se décharge ou que l'exécuteur soit arrêté à l'aide de la méthode stop () .
Exemple
Voici l'exemple qui fera apparaître une boîte de dialogue toutes les 5 secondes jusqu'à ce que vous l'arrêtiez en appuyant sur le bouton «Annuler».
<html>
<head>
<title>Prototype examples</title>
<script type = "text/javascript" src = "/javascript/prototype.js"></script>
<script>
function startExec() {
new PeriodicalExecuter(function(pe) {
if (!confirm('Want me to annoy you again later?'))
pe.stop();
}, 5);
}
</script>
</head>
<body>
<p>Click start button to start periodic executer:</p>
<br />
<br />
<input type = "button" value = "start" onclick = "startExec();"/>
</body>
</html>