From 08cf82e88e7a1f88da34ca251335a685889f8765 Mon Sep 17 00:00:00 2001 From: Brandon Aaron Date: Mon, 22 Mar 2010 20:05:08 -0400 Subject: [PATCH] Fix setting only one property at a time in .offset({}) --- src/offset.js | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/offset.js b/src/offset.js index 365b35aca..59591caea 100644 --- a/src/offset.js +++ b/src/offset.js @@ -157,16 +157,19 @@ jQuery.offset = { var curElem = jQuery( elem ), curOffset = curElem.offset(), curTop = parseInt( jQuery.curCSS( elem, "top", true ), 10 ) || 0, - curLeft = parseInt( jQuery.curCSS( elem, "left", true ), 10 ) || 0; + curLeft = parseInt( jQuery.curCSS( elem, "left", true ), 10 ) || 0, + props = {}; if ( jQuery.isFunction( options ) ) { options = options.call( elem, i, curOffset ); } - var props = { - top: (options.top - curOffset.top) + curTop, - left: (options.left - curOffset.left) + curLeft - }; + if (options.top != null) { + props.top = (options.top - curOffset.top) + curTop; + } + if (options.left != null) { + props.left = (options.left - curOffset.left) + curLeft; + } if ( "using" in options ) { options.using.call( elem, props );