Javascript 使用.css和jquery对变量应用负值

Javascript 使用.css和jquery对变量应用负值,javascript,jquery,css,margin,negative-number,Javascript,Jquery,Css,Margin,Negative Number,我有一个语法问题,因为我想做一些非常简单的事情。使用.css将负值应用于变量 这里有代码: var figureImage = $('.js-image-centering'); var figureImageHeight = figureImage.height(); var figureImageWidth = figureImage.width(); var figureImageMarginLeft = (0-(figureImageWidth/2)); var figureImageM

我有一个语法问题,因为我想做一些非常简单的事情。使用
.css
将负值应用于变量

这里有代码:

var figureImage = $('.js-image-centering');
var figureImageHeight = figureImage.height();
var figureImageWidth = figureImage.width();
var figureImageMarginLeft = (0-(figureImageWidth/2));
var figureImageMarginTop = (0-(figureImageHeight/2));

figureImage.css('margin-left', figureImageMarginLeft);
figureImage.css('margin-top', figureImageMarginTop);
我想忘记
FigureImageArginLeft
FigureImageArginTop
。那么,有可能发生这样的事情吗

figureImage.css('margin-left', -figureImageMarginLeft);

如何正确编写它?

关于
figureImage.css('margin-left',“-”+figureImage-left+'px')

绝对是。如果你这样做

var a = 100;
$(".stuff").css("margin-left",-a)
元素将获得规则:
左边距:-100px

您可以这样做:

var mL = -30;
$("div").css("marginLeft", mL + "px");

这会起作用(将正值设为负值,将负值设为正值):

或者,如果您希望它始终为负值:

figureImage.css('margin-left', -Math.abs(figureImageMarginLeft)+"px");
总是积极的:

figureImage.css('margin-left', -figureImageMarginLeft+"px");
figureImage.css('margin-left', Math.abs(figureImageMarginLeft)+"px");

例如:

你不需要做
(0-(figureImageWidth/2))
,做
-figureImageWidth/2
就可以了。如果你不知道
FigureImageRightLeft
是-ve或+ve,那么你可以做,
-Math.abs(FigureImageLeft)
总是得到负数。@AshishKumar这非常有效,但我想知道将来如果需要,如何在.css字段上应用这个负值。@AshishKumar Steve Robinson的答案是正确的,但我想知道什么方法更适合于速度质量或最佳实践在jQuery中,您不需要将
px
指定为
.css()
.animate()的单位
.height()
等。如果这样做,则根本不显示该值。所以这段代码根本不能让它工作。你还有其他意见吗?