Tizen 2.1 base
[platform/framework/web/web-ui-fw.git] / libs / js / jquery-mobile-1.0.1pre / js / jquery.mobile.transition.js
1 /*
2 * "transitions" plugin - Page change tranistions
3 */
4
5 (function( $, window, undefined ) {
6
7 function css3TransitionHandler( name, reverse, $to, $from ) {
8
9         var deferred = new $.Deferred(),
10                 reverseClass = reverse ? " reverse" : "",
11                 viewportClass = "ui-mobile-viewport-transitioning viewport-" + name,
12                 doneFunc = function() {
13
14                         $to.add( $from ).removeClass( "out in reverse " + name );
15
16                         if ( $from && $from[ 0 ] !== $to[ 0 ] ) {
17                                 $from.removeClass( $.mobile.activePageClass );
18                         }
19
20                         $to.parent().removeClass( viewportClass );
21
22                         deferred.resolve( name, reverse, $to, $from );
23                 };
24
25         $to.animationComplete( doneFunc );
26
27         $to.parent().addClass( viewportClass );
28
29         if ( $from ) {
30                 $from.addClass( name + " out" + reverseClass );
31         }
32         $to.addClass( $.mobile.activePageClass + " " + name + " in" + reverseClass );
33
34         return deferred.promise();
35 }
36
37 // Make our transition handler public.
38 $.mobile.css3TransitionHandler = css3TransitionHandler;
39
40 // If the default transition handler is the 'none' handler, replace it with our handler.
41 if ( $.mobile.defaultTransitionHandler === $.mobile.noneTransitionHandler ) {
42         $.mobile.defaultTransitionHandler = css3TransitionHandler;
43 }
44
45 })( jQuery, this );