]> source.dussan.org Git - jquery.git/commitdiff
Offset: Round offset value for the sake of floating errors
authorMichał Gołębiowski <m.goleb@gmail.com>
Mon, 16 Mar 2015 17:23:21 +0000 (18:23 +0100)
committerMichał Gołębiowski <m.goleb@gmail.com>
Mon, 23 Mar 2015 17:30:05 +0000 (18:30 +0100)
IE10+ may return not exactly the offset.top value set in an offset callback
if parent has fractional top offset itself. Checking for being close to the
desired result fixes the test error.

(cherry-picked from 62ae2d0fb7ac011bf2ad778f8158de408e785927)

Fixes gh-2147

test/unit/dimensions.js

index c3bf71a63e90ae24d425be4f53df158e4a856456..6a84539025a7808de64dba687c5ae4c03d46e4c7 100644 (file)
@@ -468,7 +468,8 @@ testIframe( "dimensions/documentLarge", "window vs. large document", function( j
 });
 
 test( "allow modification of coordinates argument (gh-1848)", 1, function() {
-       var element = jQuery( "<div/>" ).appendTo( "#qunit-fixture" );
+       var offsetTop,
+               element = jQuery( "<div/>" ).appendTo( "#qunit-fixture" );
 
        element.offset(function( index, coords ) {
                coords.top = 100;
@@ -476,7 +477,9 @@ test( "allow modification of coordinates argument (gh-1848)", 1, function() {
                return coords;
        });
 
-       equal( element.offset().top, 100, "coordinates are modified" );
+       offsetTop = element.offset().top;
+       ok( Math.abs(offsetTop - 100) < 0.02,
+               "coordinates are modified (got offset.top: " +  offsetTop + ")");
 });
 
 })();