Commit fdf37de7 authored by Sindre Sorhus's avatar Sindre Sorhus Committed by Dave Methvin

Followup to #11469; add test case and clarify code.

parent d5ee856a
...@@ -4,6 +4,7 @@ var elemdisplay = {}, ...@@ -4,6 +4,7 @@ var elemdisplay = {},
iframe, iframeDoc, iframe, iframeDoc,
rfxtypes = /^(?:toggle|show|hide)$/, rfxtypes = /^(?:toggle|show|hide)$/,
rfxnum = /^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i, rfxnum = /^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,
rMarginProp = /^margin/,
timerId, timerId,
fxAttrs = [ fxAttrs = [
// height animations // height animations
...@@ -636,8 +637,8 @@ jQuery.extend( jQuery.fx, { ...@@ -636,8 +637,8 @@ jQuery.extend( jQuery.fx, {
// Ensure props that can't be negative don't go there on undershoot easing // Ensure props that can't be negative don't go there on undershoot easing
jQuery.each( fxAttrs.concat.apply( [], fxAttrs ), function( i, prop ) { jQuery.each( fxAttrs.concat.apply( [], fxAttrs ), function( i, prop ) {
// exclude marginTop, marginLeft, marginBottom and marginRight from this list // Exclude marginTop, marginLeft, marginBottom and marginRight from this list
if ( prop.indexOf( "margin" ) ) { if ( !rMarginProp.test( prop ) ) {
jQuery.fx.step[ prop ] = function( fx ) { jQuery.fx.step[ prop ] = function( fx ) {
jQuery.style( fx.elem, prop, Math.max(0, fx.now) + fx.unit ); jQuery.style( fx.elem, prop, Math.max(0, fx.now) + fx.unit );
}; };
......
...@@ -263,6 +263,15 @@ test("animate negative height", function() { ...@@ -263,6 +263,15 @@ test("animate negative height", function() {
}); });
}); });
test("animate negative margin", function() {
expect(1);
stop();
jQuery("#foo").animate({ marginTop: -100 }, 100, function() {
equal( jQuery(this).css("marginTop"), "-100px", "Verify margin." );
start();
});
});
test("animate negative padding", function() { test("animate negative padding", function() {
expect(1); expect(1);
stop(); stop();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment