原型 - 定期执行


很多时候需要在一定时间后多次执行某个函数。例如,您可能想在给定时间后刷新屏幕。Prototype 提供了一种简单的机制来使用PeriodicalExecuter对象来实现它。

periodicalexecuter提供的优点是它可以防止回调函数的多个并行执行。

创建一个期刊执行器

构造函数有两个参数 -

  • 回调函数。
  • 执行之间的时间间隔(以秒为单位)。

一旦启动,周期性执行器就会无限期地触发,直到页面卸载或使用stop()方法停止执行器。

例子

以下是每 5 秒弹出一个对话框的示例,直到您通过按“取消”按钮停止它。

<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>

输出