Skip to content

Commit b041242

Browse files
committed
Offset: add tests for hidden elements + scroll
- Also add comments to hidden/disconnected tests noting this is to ensure consistency between branches
1 parent 0e4477c commit b041242

File tree

2 files changed

+15
-1
lines changed

2 files changed

+15
-1
lines changed

test/data/offset/scroll.html

+2
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
#scroll-1-1 { top: 1px; left: 1px; }
1212
#scroll-1-1-1 { top: 1px; left: 1px; }
1313
#forceScroll { width: 5000px; height: 5000px; }
14+
#hidden { display: none; }
1415
#marker { position: absolute; border: 2px solid #000; width: 50px; height: 50px; background: #ccc; }
1516
</style>
1617
<script src="../../jquery.js"></script>
@@ -32,6 +33,7 @@
3233
<div id="scroll-1-1-1" class="scroll"></div>
3334
</div>
3435
</div>
36+
<div id="hidden"></div>
3537
<div id="forceScroll"></div>
3638
<div id="marker"></div>
3739
<p class="instructions">Click the white box to move the marker to it.</p>

test/unit/offset.js

+13-1
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,9 @@ test("disconnected element", function() {
5252

5353
var result = jQuery( document.createElement( "div" ) ).offset();
5454

55+
// These tests are solely for master/compat consistency
56+
// Retrieving offset on disconnected/hidden elements is not officially
57+
// valid input, but will return zeros for back-compat
5558
equal( result.top, 0, "Retrieving offset on disconnected elements returns zeros (gh-2310)" );
5659
equal( result.left, 0, "Retrieving offset on disconnected elements returns zeros (gh-2310)" );
5760
});
@@ -64,6 +67,9 @@ test("hidden (display: none) element", function() {
6467

6568
node.remove();
6669

70+
// These tests are solely for master/compat consistency
71+
// Retrieving offset on disconnected/hidden elements is not officially
72+
// valid input, but will return zeros for back-compat
6773
equal( result.top, 0, "Retrieving offset on hidden elements returns zeros (gh-2310)" );
6874
equal( result.left, 0, "Retrieving offset on hidden elements returns zeros (gh-2310)" );
6975
});
@@ -401,14 +407,20 @@ testIframe("offset/table", "table", function( $ ) {
401407
});
402408

403409
testIframe("offset/scroll", "scroll", function( $, win ) {
404-
expect(28);
410+
expect( 30 );
405411

406412
equal( $("#scroll-1").offset().top, 7, "jQuery('#scroll-1').offset().top" );
407413
equal( $("#scroll-1").offset().left, 7, "jQuery('#scroll-1').offset().left" );
408414

409415
equal( $("#scroll-1-1").offset().top, 11, "jQuery('#scroll-1-1').offset().top" );
410416
equal( $("#scroll-1-1").offset().left, 11, "jQuery('#scroll-1-1').offset().left" );
411417

418+
// These tests are solely for master/compat consistency
419+
// Retrieving offset on disconnected/hidden elements is not officially
420+
// valid input, but will return zeros for back-compat
421+
equal( $("#hidden").offset().top, 0, "Hidden elements do not subtract scroll" );
422+
equal( $("#hidden").offset().left, 0, "Hidden elements do not subtract scroll" );
423+
412424
// scroll offset tests .scrollTop/Left
413425
equal( $("#scroll-1").scrollTop(), 5, "jQuery('#scroll-1').scrollTop()" );
414426
equal( $("#scroll-1").scrollLeft(), 5, "jQuery('#scroll-1').scrollLeft()" );

0 commit comments

Comments
 (0)