Classes implementing or extending this Class will have extra methods to handle delayed, animated and periodical events.
Example
define('MyProject/Class/MyAnime', [
'UWA/Class',
'UWA/Class/Timed',
], function (Class, Timed) {
var MyAnime = Class.extend(Timed, {
init: function (element, start, stop) {
this.current = null;
this.start = start;
this.stop = stop;
this.element = element;
},
run: function () {
this.setAnimate('myAnimation', this.animate);
},
stop: function () {
this.clearAnimate('myAnimation');
},
isRuning: function () {
return this.hasAnimate('myAnimation');
},
animate: function () {
var element = this.element;
if (this.current === null) {
this.current = this.start;
}
UWA.Element.setStyle.call(element, 'top', this.current++);
if (this.current <= this.stop) {
this.setAnimate('myAnimation', this.animate);
}
}
});
return MyAnime;
});
require(['MyProject/Class/MyAnime'], function (MyAnime) {
var myAnime = new MyAnime(widget.body, 1, 300);
myAnime.run();
});
Index
Methods
Methods
-
<inner> setPeriodical(name, fn, delay, force, bind) → {this}
-
Register a function as periodical event.
Parameters
Name Type Description nameString The name of the periodical event
fnFunction The function to register
delayNumber The execution delay in milliseconds
forceBoolean If
true, fire the function for the time right nowbindObject The context to pass to the function, current instance by default.
Returns
- Type
- this
-
<inner> clearPeriodical(name) → {this}
-
Unregister a periodical event previously registered with <setPeriodical>. If the name is specified, it removes the associated periodical event. Else, it removes all periodicals events.
Parameters
Name Type Description nameString the name of the event
Returns
- Type
- this
-
<inner> hasPeriodical(name) → {Boolean}
-
Check if a periodical event is registered.
Parameters
Name Type Description nameString The name of the periodical event
Returns
trueIf a periodical event is registered.- Type
- Boolean
-
<inner> setDelayed(name, fn, delay, force, bind) → {this}
-
Registers a function as delayed event.
Parameters
Name Type Description nameString The name of the delayed event
fnFunction The function to register
delayNumber The delay in milliseconds
forceBoolean If
true, fire the function for the time right nowbindObject The context to pass to the function, current instance by default.
Returns
- Type
- this
-
<inner> clearDelayed(name) → {this}
-
Unregister a delayed event previously registered with <setDelayed>. If the name is specified, it removes the associated periodical event. Else, it removes all periodicals events.
Parameters
Name Type Description nameString The name of the delayed event
Returns
- Type
- this
-
<inner> hasDelayed(name) → {Boolean}
-
Check if a delayed event is registered.
Parameters
Name Type Description nameString The name of the delayed event
Returns
trueIf a delayed event is registered.- Type
- Boolean
-
<inner> setAnimate(name, fn, bind) → {this}
-
Register a function as frame animation event.
Use requestAnimationFrame if available else fallback on setTimeout with 16ms delay.
Parameters
Name Type Description nameString The name of the animation event
fnFunction The function to register
bindObject The context to pass to the function, current instance by default.
Returns
- Type
- this
-
<inner> clearAnimate(name) → {this}
-
Unregister a frame animation event previously registered with <setAnimate>. If the name is specified, it removes the associated animation event. Else, it removes all animation events.
Parameters
Name Type Description nameString The name of the event
Returns
- Type
- this
-
<inner> hasAnimate(name) → {Boolean}
-
Check if a animation event is registered.
Parameters
Name Type Description nameString The name of the animation event
Returns
trueIf a animation event is registered.- Type
- Boolean
-
<inner> setImmediate(name, fn, bind) → {this}
-
Register a function as immediate event.
Use setImmediate if available else fallback on setTimeout with ~1ms delay.
Parameters
Name Type Description nameString The name of the immediate event
fnFunction The function to register
bindObject The context to pass to the function, current instance by default.
Returns
- Type
- this
-
<inner> clearImmediate(name) → {this}
-
Unregister a immediate event previously registered with <setImmediate>. If the name is specified, it removes the associated immediate event. Else, it removes all immediate events.
Parameters
Name Type Description nameString The name of the event
Returns
- Type
- this
-
<inner> hasImmediate(name) → {Boolean}
-
Check if a immediate event is registered.
Parameters
Name Type Description nameString The name of the immediate event
Returns
trueIf a immediate event is registered.- Type
- Boolean
-
<inner> clearAllTimed() → {this}
-
Clear all registered 'timed' callback.
Returns
- Type
- this