aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOleg Gaidarenko <markelog@gmail.com>2016-02-09 00:17:25 +0300
committerOleg Gaidarenko <markelog@gmail.com>2016-02-09 00:24:22 +0300
commit49833f7795d665ff1d543c4f71f29fca95b567e9 (patch)
tree8bb8400965889d23a663b325a74eb006b573080f
parent9cb89bf91d034ec7166d9215e2f80fa765292975 (diff)
downloadjquery-49833f7795d665ff1d543c4f71f29fca95b567e9.tar.gz
jquery-49833f7795d665ff1d543c4f71f29fca95b567e9.zip
Revert "Offset: account for scroll when calculating position"
This reverts commit 2d715940b9b6fdeed005cd006c8bf63951cf7fb2. This commit provoked new issues: gh-2836, gh-2828. At the meeting, we decided to revert offending commit (in all three branches - 2.2-stable, 1.12-stable and master) and tackle this issue in 3.x. Fixes gh-2828
-rw-r--r--src/offset.js7
-rw-r--r--test/unit/offset.js14
2 files changed, 4 insertions, 17 deletions
diff --git a/src/offset.js b/src/offset.js
index f7ef79c3c..365041391 100644
--- a/src/offset.js
+++ b/src/offset.js
@@ -144,11 +144,8 @@ jQuery.fn.extend( {
}
// Add offsetParent borders
- // Subtract offsetParent scroll positions
- parentOffset.top += jQuery.css( offsetParent[ 0 ], "borderTopWidth", true ) -
- offsetParent.scrollTop();
- parentOffset.left += jQuery.css( offsetParent[ 0 ], "borderLeftWidth", true ) -
- offsetParent.scrollLeft();
+ parentOffset.top += jQuery.css( offsetParent[ 0 ], "borderTopWidth", true );
+ parentOffset.left += jQuery.css( offsetParent[ 0 ], "borderLeftWidth", true );
}
// Subtract parent offsets and element margins
diff --git a/test/unit/offset.js b/test/unit/offset.js
index a0f253b4e..823ccd7d2 100644
--- a/test/unit/offset.js
+++ b/test/unit/offset.js
@@ -406,7 +406,7 @@ testIframe( "offset/table", "table", function( $, window, document, assert ) {
} );
testIframe( "offset/scroll", "scroll", function( $, win, doc, assert ) {
- assert.expect( 30 );
+ assert.expect( 24 );
assert.equal( $( "#scroll-1" ).offset().top, 7, "jQuery('#scroll-1').offset().top" );
assert.equal( $( "#scroll-1" ).offset().left, 7, "jQuery('#scroll-1').offset().left" );
@@ -462,17 +462,6 @@ testIframe( "offset/scroll", "scroll", function( $, win, doc, assert ) {
assert.notEqual( $().scrollLeft( null ), null, "jQuery().scrollLeft(null) testing setter on empty jquery object" );
assert.strictEqual( $().scrollTop(), undefined, "jQuery().scrollTop() testing getter on empty jquery object" );
assert.strictEqual( $().scrollLeft(), undefined, "jQuery().scrollLeft() testing getter on empty jquery object" );
-
- // Tests position after parent scrolling (#15239)
- $( "#scroll-1" ).scrollTop( 0 );
- $( "#scroll-1" ).scrollLeft( 0 );
- assert.equal( $( "#scroll-1-1" ).position().top, 6, "jQuery('#scroll-1-1').position().top unaffected by parent scrolling" );
- assert.equal( $( "#scroll-1-1" ).position().left, 6, "jQuery('#scroll-1-1').position().left unaffected by parent scrolling" );
-
- $( "#scroll-1" ).scrollTop( 5 );
- $( "#scroll-1" ).scrollLeft( 5 );
- assert.equal( $( "#scroll-1-1" ).position().top, 6, "jQuery('#scroll-1-1').position().top unaffected by parent scrolling" );
- assert.equal( $( "#scroll-1-1" ).position().left, 6, "jQuery('#scroll-1-1').position().left unaffected by parent scrolling" );
} );
testIframe( "offset/body", "body", function( $, window, document, assert ) {
@@ -486,6 +475,7 @@ testIframe( "offset/body", "body", function( $, window, document, assert ) {
QUnit.test( "chaining", function( assert ) {
assert.expect( 3 );
+
var coords = { "top": 1, "left": 1 };
assert.equal( jQuery( "#absolute-1" ).offset( coords ).jquery, jQuery.fn.jquery, "offset(coords) returns jQuery object" );
assert.equal( jQuery( "#non-existent" ).offset( coords ).jquery, jQuery.fn.jquery, "offset(coords) with empty jQuery set returns jQuery object" );