dojox
Version:
Dojo eXtensions, a rollup of many useful sub-projects and varying states of maturity – from very stable and robust, to alpha and experimental. See individual projects contain README files for details.
46 lines (39 loc) • 1.12 kB
JavaScript
define([
"dojo/_base/lang",
"dojo/_base/fx",
"dojo/dom-style",
"dojo/fx"
], function(lang, baseFx, domStyle, fx) {
function _fade(/*Object*/args, /*string*/action){
// summary:
// Returns an animation of a fade out and fade in of the current and next
// panes. It will either chain (fade) or combine (crossFade) the fade
// animations.
var n = args.next.node;
domStyle.set(n, {
display: "",
opacity: 0
});
args.node = args.current.node;
return fx[action]([ /*dojo.Animation*/
baseFx.fadeOut(args),
baseFx.fadeIn(lang.mixin(args, { node: n }))
]);
}
var exports = {
fade: function(/*Object*/args){
// summary:
// Returns a dojo.Animation that fades out the current pane, then fades in
// the next pane.
return _fade(args, "chain"); /*dojo.Animation*/
},
crossFade: function(/*Object*/args){
// summary:
// Returns a dojo.Animation that cross fades two rotator panes.
return _fade(args, "combine"); /*dojo.Animation*/
}
};
// back-compat, remove for 2.0
lang.mixin(lang.getObject("dojox.widget.rotator"), exports);
return exports;
});