]> source.dussan.org Git - jquery.git/commitdiff
Fix #12283. Return null for dimension getters on non elements. Fix gh-900.
authorMike Sherov <mike.sherov@gmail.com>
Sun, 19 Aug 2012 20:30:10 +0000 (16:30 -0400)
committerDave Methvin <dave.methvin@gmail.com>
Mon, 20 Aug 2012 02:58:05 +0000 (22:58 -0400)
src/dimensions.js
test/unit/dimensions.js

index c8034bc619024d64a8d2776b8e1e6790924d61a8..c41cce1b3e49d1fe13be95fb2f8c73e83fb9bfa1 100644 (file)
@@ -35,7 +35,7 @@ jQuery.each( { Height: "height", Width: "width" }, function( name, type ) {
 
                                        // Set width or height on the element
                                        jQuery.style( elem, type, value, extra );
-                       }, type, chainable ? margin : undefined, chainable );
+                       }, type, chainable ? margin : undefined, chainable, null );
                };
        });
 });
index 0b2e63600406b54ad5b41f440d5f43ee746b5fe5..b3c15f2839fac74b57c1e76eb84aeabbde7e7960 100644 (file)
@@ -385,6 +385,22 @@ test("passing undefined is a setter #5571", function() {
        equal(jQuery("#nothiddendiv").width(30).width(undefined).width(), 30, ".width(undefined) is chainable (#5571)");
 });
 
+test( "getters on non elements should return null", function() {
+       expect( 8 );
+
+       var nonElem = jQuery("notAnElement");
+
+       strictEqual( nonElem.width(), null, ".width() is not null (#12283)" );
+       strictEqual( nonElem.innerWidth(), null, ".innerWidth() is not null (#12283)" );
+       strictEqual( nonElem.outerWidth(), null, ".outerWidth() is not null (#12283)" );
+       strictEqual( nonElem.outerWidth( true ), null, ".outerWidth(true) is not null (#12283)" );
+
+       strictEqual( nonElem.height(), null, ".height() is not null (#12283)" );
+       strictEqual( nonElem.innerHeight(), null, ".innerHeight() is not null (#12283)" );
+       strictEqual( nonElem.outerHeight(), null, ".outerHeight() is not null (#12283)" );
+       strictEqual( nonElem.outerHeight( true ), null, ".outerHeight(true) is not null (#12283)" );
+});
+
 test("setters with and without box-sizing:border-box", function(){
        expect(20);