]> 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:14:37 +0000 (18:14 +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.

Fixes gh-2147

test/unit/dimensions.js

index d0e7ea2b8a16355143388a12122269f6f76714a0..7e31771617ea925ada1985c1ac4df5bd2c5d8d17 100644 (file)
@@ -453,7 +453,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;
@@ -461,7 +462,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 + ")");
 });
 
 })();