jQuery - CSS像素值的减去百分比

时间:2014-08-11 12:06:25

标签: javascript jquery

我试图从多个元素中获取一堆background-position-y值,并从像素值减去一个百分比,然后将新值分配给每个元素。例如。减去30%的40px = 28px。我的下面的代码没有按预期工作。

var jq = jQuery;
var icon = jq('#weather i');
jq(icon).each(function(){
    var bgPosX = jq(this).css('background-position-x');
    var bgPosY = jq(this).css('background-position-y');
    var bgPosYNew = bgPosY - 30%;
    jq(this).css({
        'background-position-x' : bgPosX,
        'background-position-y' : bgPosYNew
    });
});

2 个答案:

答案 0 :(得分:2)

尝试使用shortz:

jq(this).css('background-position-x','-=30%');

或克劳斯说:

jq(this).css('background-position-x','*=.7');

如果你去干,试试这个:

jQuery(this).css({backgroundPositionX:'*=.7', backgroundPositionY:'*=.7'});

答案 1 :(得分:0)

var bgPosYNew = bgPosY - (bgPosY * 0.3);这应该工作