(callback, delay, time)
| 4150 | } |
| 4151 | |
| 4152 | function interval(callback, delay, time) { |
| 4153 | var t = new Timer, total = delay; |
| 4154 | if (delay == null) return t.restart(callback, delay, time), t; |
| 4155 | t._restart = t.restart; |
| 4156 | t.restart = function(callback, delay, time) { |
| 4157 | delay = +delay, time = time == null ? now() : +time; |
| 4158 | t._restart(function tick(elapsed) { |
| 4159 | elapsed += total; |
| 4160 | t._restart(tick, total += delay, time); |
| 4161 | callback(elapsed); |
| 4162 | }, delay, time); |
| 4163 | }; |
| 4164 | t.restart(callback, delay, time); |
| 4165 | return t; |
| 4166 | } |
| 4167 | |
| 4168 | var emptyOn = dispatch("start", "end", "cancel", "interrupt"); |
| 4169 | var emptyTween = []; |
no test coverage detected