如何通过jquery增加/减少一个数字的当前保证金?

给定一个未知边距的元素,如何增加其边距 – 数字为100px?

例如:

假设原始边距为100px

预期的结果是100px + 100px,最后是200px。

$('#element-id').css('margin-left', function (index, curValue) { return parseInt(curValue, 10) + 100 + 'px'; }); 

curValue将在末尾包含’px’,因此您最终将使用NaN100px100px作为结果而不首先使用parseInt

快速/简洁的方法:

 $('#IDHere').animate({marginLeft: '+=100px'}, 0); 

这是一个简单的例子 。 0会在单帧中发生这种情况,如果您真的想要为其设置动画,请将0更改为您想要的毫秒数, 就像这样 。

您只需使用.css即可实现此目的(请参阅下面的示例)

 $('#element-id').css('margin-left', '+=100px'); 
 $("p").css({marginLeft: function(index, value) { return parseFloat(value) + 100; }});