1 |
torben |
2125 |
/*! |
2 |
|
|
* jQuery UI Effects Transfer 1.10.3 |
3 |
|
|
* http://jqueryui.com |
4 |
|
|
* |
5 |
|
|
* Copyright 2013 jQuery Foundation and other contributors |
6 |
|
|
* Released under the MIT license. |
7 |
|
|
* http://jquery.org/license |
8 |
|
|
* |
9 |
|
|
* http://api.jqueryui.com/transfer-effect/ |
10 |
|
|
* |
11 |
|
|
* Depends: |
12 |
|
|
* jquery.ui.effect.js |
13 |
|
|
*/ |
14 |
|
|
(function( $, undefined ) { |
15 |
|
|
|
16 |
|
|
$.effects.effect.transfer = function( o, done ) { |
17 |
|
|
var elem = $( this ), |
18 |
|
|
target = $( o.to ), |
19 |
|
|
targetFixed = target.css( "position" ) === "fixed", |
20 |
|
|
body = $("body"), |
21 |
|
|
fixTop = targetFixed ? body.scrollTop() : 0, |
22 |
|
|
fixLeft = targetFixed ? body.scrollLeft() : 0, |
23 |
|
|
endPosition = target.offset(), |
24 |
|
|
animation = { |
25 |
|
|
top: endPosition.top - fixTop , |
26 |
|
|
left: endPosition.left - fixLeft , |
27 |
|
|
height: target.innerHeight(), |
28 |
|
|
width: target.innerWidth() |
29 |
|
|
}, |
30 |
|
|
startPosition = elem.offset(), |
31 |
|
|
transfer = $( "<div class='ui-effects-transfer'></div>" ) |
32 |
|
|
.appendTo( document.body ) |
33 |
|
|
.addClass( o.className ) |
34 |
|
|
.css({ |
35 |
|
|
top: startPosition.top - fixTop , |
36 |
|
|
left: startPosition.left - fixLeft , |
37 |
|
|
height: elem.innerHeight(), |
38 |
|
|
width: elem.innerWidth(), |
39 |
|
|
position: targetFixed ? "fixed" : "absolute" |
40 |
|
|
}) |
41 |
|
|
.animate( animation, o.duration, o.easing, function() { |
42 |
|
|
transfer.remove(); |
43 |
|
|
done(); |
44 |
|
|
}); |
45 |
|
|
}; |
46 |
|
|
|
47 |
|
|
})(jQuery); |