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>

Production