Skip to content
Permalink
Browse files

Effects.transfer: check the target is fixed or not, and consider scro…

…lling. Fixed #5547 - Transfer effect to fixed positioned element.
  • Loading branch information...
tomykaira authored and gnarf committed Jun 10, 2011
1 parent 154c5e5 commit 3e0d3c9225913db2f5aa8cd48ff29efa95f1feab
Showing with 9 additions and 5 deletions.
  1. +9 −5 ui/jquery.effects.transfer.js
@@ -17,10 +17,14 @@ $.effects.effect.transfer = function( o ) {
return this.queue( function() {
var elem = $( this ),
target = $( o.to ),
targetFixed = target.css( "position" ) === "fixed",
body = $("body"),
fixTop = targetFixed ? body.scrollTop() : 0,
fixLeft = targetFixed ? body.scrollLeft() : 0,
endPosition = target.offset(),
animation = {
top: endPosition.top,
left: endPosition.left,
top: endPosition.top - fixTop ,
left: endPosition.left - fixLeft ,
height: target.innerHeight(),
width: target.innerWidth()
},
@@ -29,11 +33,11 @@ $.effects.effect.transfer = function( o ) {
.appendTo( document.body )
.addClass( o.className )
.css({
top: startPosition.top,
left: startPosition.left,
top: startPosition.top - fixTop ,
left: startPosition.left - fixLeft ,
height: elem.innerHeight(),
width: elem.innerWidth(),
position: 'absolute'
position: targetFixed ? "fixed" : "absolute"
})
.animate( animation, o.duration, o.easing, function() {
transfer.remove();

0 comments on commit 3e0d3c9

Please sign in to comment.
You can’t perform that action at this time.