2 Copyright (c) 2009, Yahoo! Inc. All rights reserved.
3 Code licensed under the BSD License:
4 http://developer.yahoo.net/yui/license.txt
8 YUI.add('yui-later', function(Y) {
11 * Provides a setTimeout/setInterval wrapper
13 * @submodule yui-later
19 * Executes the supplied function in the context of the supplied
20 * object 'when' milliseconds later. Executes the function a
21 * single time unless periodic is set to true.
24 * @param when {int} the number of milliseconds to wait until the fn
26 * @param o the context object.
27 * @param fn {Function|String} the function to execute or the name of
28 * the method in the 'o' object to execute.
29 * @param data [Array] data that is provided to the function. This accepts
30 * either a single item or an array. If an array is provided, the
31 * function is executed with one parameter for each array item. If
32 * you need to pass a single array parameter, it needs to be wrapped in
34 * @param periodic {boolean} if true, executes continuously at supplied
35 * interval until canceled.
36 * @return {object} a timer object. Call the cancel() method on this object to
39 later = function(when, o, fn, data, periodic) {
42 var m=fn, d=Y.Array(data), f, r;
55 r = (periodic) ? setInterval(f, when) : setTimeout(f, when);
76 }, '3.0.0' ,{requires:['yui-base']});