Dec 1, 2008

Prototype Periodical Execution

Prototype Periodical Execution
Many times it is required to execute a function many times after a certain period of time. For example, you may want to refresh your screen after a given time. Prototype provides a simple mechanism to implement it using PeriodicalExecuter object.

The advantage provided by PeriodicalExecuter is that it shields you against multiple parallel executions of the callback function.
Creating a PeriodicalExecuter:

The constructor takes two arguments:
* The callback function.
* The interval (in seconds) between executions.

Once launched, a PeriodicalExecuter triggers indefinitely, until the page unloads or the executer is stopped using stop() method.

Following example which will pop up a dialogue box after every 5 seconds untill you will stop it by pressing "cancel' button.

function startExec()
{
new PeriodicalExecuter(function(pe) {
if (!confirm('Want me to annoy you again later?'))
pe.stop();
}, 5);

}

No comments: